パフォーマンスを
発揮するためのCSS
2015.8.30 (Sun)
沖 良矢(世路庵)
Back to Basics CSS @ DMM.comラボ
自己紹介
OKI Yoshiya
• 世路庵(せろあん)
• インタラクションデザイナー
• フリーランス8年目
KAMABOKO ROAD TO 1000
(2015)
lynda.com 日本語版
トレーナー (2015)
Web Designing 連載
(2009~2015)
話すこと
1. パフォーマンスとは
2. 改善の手法
3. なぜ必要なのか?
パフォーマンスとは
What is performance ?1.
パフォーマンスとは
読み込み
速度
実行速度
パフォー
マンス
読み込み開始から
表示されるまでの
時間
機能や演出を実行
するときの時間
重さ
改善の手法
Improvement methods2.
読み込み速度
 HTTPリクエスト数の軽減
 ファイルの結合/不要ファイル
の削除
 CSSスプライト
 サーバー/回線の増強
 ファイルサイズの軽量化
 ファイルの最適化/圧縮
 gzip
 演出による擬似的な軽量化
実行速度
 FPSの安定化
 描画負荷の軽減
 GPUの利用
 不要な要素の削除
 演出の迅速化
改善例
Premature optimization is
the root of all evil.
(早まった最適化は諸悪の根
源である)
Donald Knuth
引用:Loadmaster CC 表示-継承 2.5
https://ja.wikipedia.org/wiki/%E3%83%89%E3%
83%8A%E3%83%AB%E3%83%89%E3%83%BB%
E3%82%AF%E3%83%8C%E3%83%BC%E3%82%
B9#/media/File:KnuthAtOpenContentAlliance.jpg
読み込み速度
 HTTPリクエスト数の軽減
 ファイルの結合/不要ファイル
の削除
 CSSスプライト
 サーバー/回線の増強
 ファイルサイズの軽量化
 ファイルの最適化/圧縮
 gzip
 演出による擬似的な軽量化
実行速度
 FPSの安定化
 描画負荷の軽減
 GPUの利用
 不要な要素の削除
 演出の迅速化
改善例
自動化できるところは自動化!
レンダリングの流れ
HTML
(タグスープ)
DOM
レンダーツリー
レイアウト
(リフロー)
ペイント
CSS CSSOM
レンダーツリー
要素に変更が加わると、レイアウトまたはペイントから再実行される。
レイアウトに影響を及ぼすプロパティ
 width
 height
 padding
 margin
 display
 border-width
 position
 top/right/left/bottom
 font-size
 float
 text-align
 overflow
 font-weight
 font-family
 line-height
 vertical-align
 clear
 white-space
 min-height
など
ペイントに影響を及ぼすプロパティ
 color
 border-style
 visibility
 background
 text-decoration
 background-image
 background-position
 background-repeat
 background-size
 outline
 outline-color
 outline-style
 outline-width
 border-radius
 box-shadow
 text-shadow
など
動的な変更でもパフォーマンスの高いプロパティ
 opacity(透明度)
 transform
 translate(位置)
 scale(拡大率)
 rotate(回転)
GPUが利用されるため高速
その他、すぐできそうなこと
ローディングなど使い終わった要素をdisplay: none
初期表示命の場合は「クリティカルCSS」もお勧め
(自動化可能。詳しくはググってね)
なぜ必要なのか?
Why we need for better performance ?3.
読み込み時間が0.1秒遅くなる
と、売上が1%低下する。
Amazon
速ければ速いほどいい?
The faster is good ?
引用:Marcus Pink CC BY 2.0
https://www.flickr.com/photos/51775268@N00/5406005088/
2001 2015
amazon.co.jp
時代や状況によって、
求められるパフォーマンスは千差万別
By times and circumstances, required performance changes.
引用:alexkerhead CC BY 2.0
https://www.flickr.com/photos/26354629@N02/2783514026/
パフォーマンス改善におけるポイント
まず実装優先
必要に応じて明確なパフォーマンス目標を設定する
FPS/時間/ファイルサイズ/対象機種(特にモバイル)
ツールで計測しながら最適化する
その情報/機能はユーザーにとって本当に必要か
http://ceroan.jp/
2015.8.30 (Sun)

More Related Content

PDF
2011クラウドコンピューティングexpo講演資料 in iretブース
PDF
AWS で concrete5 を 簡単起動!
PDF
Wordvolcano
PPTX
20140628 AWSの2014前半のアップデートまとめ
PPTX
JAWS-UG Santo 2014-07-05 Drupal on PaaS Cloud
PDF
Redific:AWSのデータ転送量を減らしてコストダウン!
PDF
Talk: serverless-express
2011クラウドコンピューティングexpo講演資料 in iretブース
AWS で concrete5 を 簡単起動!
Wordvolcano
20140628 AWSの2014前半のアップデートまとめ
JAWS-UG Santo 2014-07-05 Drupal on PaaS Cloud
Redific:AWSのデータ転送量を減らしてコストダウン!
Talk: serverless-express

What's hot (20)

ODP
別の角度からAWSを眺めてみた話
PDF
Web体験を向上させる無料CDN 「rapid start」× stripe決済
PDF
Mildscaling 20150725
PDF
コスト削減から考えるAWSの効果的な利用方法
PDF
土日でLineみたいなチャット作ってきた!
PPTX
セルフペースラボで気軽に始めるAWS
PDF
[jaws days 2014]ELB/AutoScaling
PPTX
ELBの概要と勘所
PDF
JAWS-UG Osaka 2013.11.02 Feel the Elesticity v2.0
PPTX
クライムどこでもセミナー:『どこから調査する?』の悩みを解消!失敗しない仮想化DB監視術
PDF
Awsコスト削減
PDF
20130330 JAWS-UG広島 美人CDP
PDF
2013/06 九州産業大学 -とある業界の禁書目録-
PDF
Cloud on the BEACH2014 CDP道場乱取り稽古お題
PDF
20120413 cdpナイト
PDF
サイボウズ Officeユーザーのためのクラウド移行講座
KEY
Rdbms起点で考えると見えない世界 okuyama勉強会
PDF
AWSからAzureへ
PDF
【ご提案書】高機能Web会議ソフトを使った企業価値向上について
PPTX
O365 ユーザーのための Azure Storage 入門
別の角度からAWSを眺めてみた話
Web体験を向上させる無料CDN 「rapid start」× stripe決済
Mildscaling 20150725
コスト削減から考えるAWSの効果的な利用方法
土日でLineみたいなチャット作ってきた!
セルフペースラボで気軽に始めるAWS
[jaws days 2014]ELB/AutoScaling
ELBの概要と勘所
JAWS-UG Osaka 2013.11.02 Feel the Elesticity v2.0
クライムどこでもセミナー:『どこから調査する?』の悩みを解消!失敗しない仮想化DB監視術
Awsコスト削減
20130330 JAWS-UG広島 美人CDP
2013/06 九州産業大学 -とある業界の禁書目録-
Cloud on the BEACH2014 CDP道場乱取り稽古お題
20120413 cdpナイト
サイボウズ Officeユーザーのためのクラウド移行講座
Rdbms起点で考えると見えない世界 okuyama勉強会
AWSからAzureへ
【ご提案書】高機能Web会議ソフトを使った企業価値向上について
O365 ユーザーのための Azure Storage 入門
Ad

More from Yoshiya OKI (12)

PDF
本当に必要なものを探すためのプロトタイピング
PDF
フロントエンドのためのベストバイ
PDF
オレオレフロントエンド開発環境 ~際限なき修正を攻略せよ!~
PDF
とにかく時間が無い案件を乗り切る画像書き出し
PDF
Sass実践編+Compass入門
PDF
Sassをはじめよう!
PDF
Flash Professional CCで何が変わったのか
PDF
実際にSoundJSを使ってみて分かったこと
PDF
Flashクリエイターはどこへ行く?~未来への道しるべ 会場リアルタイムアンケート結果
PDF
HTML5のリッチコンテンツ開発スイートCreateJSで、ここまでできる!
PDF
「Flashユーザーが取り組むHTML5」アンケート結果
PDF
F-siteセミナーにおけるFlashトークディスカッションのまとめ
本当に必要なものを探すためのプロトタイピング
フロントエンドのためのベストバイ
オレオレフロントエンド開発環境 ~際限なき修正を攻略せよ!~
とにかく時間が無い案件を乗り切る画像書き出し
Sass実践編+Compass入門
Sassをはじめよう!
Flash Professional CCで何が変わったのか
実際にSoundJSを使ってみて分かったこと
Flashクリエイターはどこへ行く?~未来への道しるべ 会場リアルタイムアンケート結果
HTML5のリッチコンテンツ開発スイートCreateJSで、ここまでできる!
「Flashユーザーが取り組むHTML5」アンケート結果
F-siteセミナーにおけるFlashトークディスカッションのまとめ
Ad

パフォーマンスを発揮するためのCSS