SlideShare une entreprise Scribd logo
1  sur  28
Télécharger pour lire hors ligne
本当は怖いCSSの話
大規模サイトにおける
Makoto Inoue Talk of CSS fearful in fact
井上 誠
三重県伊勢市出身
金沢美大工芸科卒業
DMM.com Labo勤務
入社8年目
デザイン部チーフ
twitter: @in0in0
facebook: http://www.facebook.com/in0in0
Makoto Inoue Talk of CSS fearful in fact
CSSの何が怖いの?
A thing with what dreadful of CSS?
影響範囲が広い
エラーを吐かない
id,classがサイト中に分散する
小規模だと問題は起こりにくい
規模が大きくなるとトラブルが…
確認する
<p class=”btn check”>
チェックボックス✓
<input type=”checkbox”
class=”check”>
段落です
p span{color:blue;
margin:20px}
<p class=”btn”>
<span>ボタン</span></p>
ボタン
定義済みのid,class名をつけた
要素の再定義で崩れた
ボタン
check!
ボタン
check!
ボタン
check!
hoge.html
fuga.html
moge.html
ボタン
check!
hage.html
ボタン
ボタン
ボタン
.button{
...}
.bt{...}
.botan{
...}
ボタン
.btn{...}
影響範囲が大きく修正しづらい
無計画にコピペされている
共通ボタン 例外ボタン共通ボタン
デバイスの向きを変えられる
ユーザはいつでも、さまざまな理由でiOSデバイスの向きを変えることができます。たとえば、実行
する操作が縦長の向きのほうが自然に感じられる場合もあれば、横長のほうがより多くの情報を表示
できると感じられる場合もあります。デバイスの向きを変える理由が何であれ、アプリケーションの
主要な機能が見やすいままであることをユーザは期待します。
ユーザはホーム(Home)画面からアプリケーションを起動することが多く、そのためすべてのアプリ
ケーションが同じ向きで開始することを期待する傾向があります。iPhoneとiPadではホーム(Home)画
面の表示の仕方が異なるため、このような期待がアプリケーションに与える影響も異なります。
●
直接操作
ユーザは、画面上のオブジェクトを、別のコントロールを通じてではなく直接操作すると、より深く
作業に関わることになり、アクションの結果をより簡単に理解できます。iOSユーザは、Multi-Touch
インターフェイスのおかげで、直接操作の感覚をより高度に感じることができます。ジェスチャを使
用することで、ユーザはマウスなどの手段を用いることなく画面に表示されるオブジェクトにタッチ
することができるため、それらオブジェクトに対してより強い親しみの感覚や制御している感覚を持
ちます。
たとえば、ズームのコントロールをタップする代わりに、ピンチのジェスチャを通じてコンテンツの
領域を直接拡大、または縮小することができます。ゲームでは、プレーヤーが画面上のオブジェクト
を直接動かしたり、対話をしたりします。たとえば、ゲームによっては、回して開くダイヤル錠を表
示するものなどがあります。
iOSアプリケーションでは、以下の場合にユーザが直接操作を体験できます。
● 画面上のオブジェクトに影響を与えるため、デバイスを回転させたり、動かしたりするとき
● ジェスチャを使用して画面上のオブジェクトを操作するとき
● 自身のアクションが目に見える結果を即座にもたらす様子を見ることができるとき
フィードバック
ディスプレイはサイズに関係なくもっとも重要
iOSデバイスのディスプレイは、ユーザ体験の中心的位置を占めています。ユーザはきれいな文字、
グラフィック、メディアを見るだけでなく、(画面を見ることができなくても)Multi-Touch画面と指
で物理的にやり取りして操作を進めます。
iOSデバイスにはさまざまな寸法や解像度のディスプレイがありますが、使い勝手に関する限り、考
え方はいずれも同じです。
● タップ可能なUI要素の快適な最小サイズは44×44ポイントです。
● ユーザは一般に、アプリケーションアートワークの質を敏感に意識します。
● 画面表示が良好であれば、デバイスの違いを意識せず、本来の作業に集中できます。
注意: ピクセルとは、画像編集アプリケーションにおいて、デバイスの画面のサイズや作成
デバイスの向きを変えられる
ユーザはいつでも、さまざまな理由でiOSデバイスの向きを変えることができます。たとえば、実行
する操作が縦長の向きのほうが自然に感じられる場合もあれば、横長のほうがより多くの情報を表示
できると感じられる場合もあります。デバイスの向きを変える理由が何であれ、アプリケーションの
主要な機能が見やすいままであることをユーザは期待します。
ユーザが対話するのは一度に1つのアプリケーション
フォアグラウンドに表示できるのは一度に1つのアプリケーシ
ションから別のアプリケーションに切り替えると、前のアプ
し、そのユーザインターフェイスも表示されなくなります。こ
ユーザが再起動または停止するまで、アプリケーションをバ
ます。
ほとんどのアプリケーションは、バックグラウンドに移行す
状態のアプリケーションはマルチタスクUIに表示されるので、
易に切り替えることができます。マルチタスクUIは画面の一番
ションのUIまたはホーム(Home)画面の下に表示されます(次
リ
ケーションの場合)。
共通化しすぎて最適化できない
レギュレーションが足かせに
全部実際に起こりました
これなら怖くない!
大規模サイトCSS設計の勘所
The vital point of a large-scale site CSS design
指定の衝突、ダメ絶対!1
全体共有のセレクタは明確に
.worklist{...}
場所をなるべく限定する
#list .worklist p
#list p
.d-worklist{...}
例:接頭辞で明確にして衝突を回避する
将来の修正、変更を考える2
id,classの命名は意味的に
.caution{color:red}
.red{color:red}
指定がなくてもclassをつける
<div class=”listbox”>
<div>
組織の要件に合わせた
CSS設計をする
3
ストラクチャタイプ
HTML構造を重視、構造に沿ったCSS指定をしていく
組織の要件に合わせた
CSS設計をする
3
ストラクチャタイプ
HTML構造を重視、構造に沿ったCSS指定をしていく
#page-top #list {…}
#page-top #list .worklist li {…}
<body id="page-top">
  <div id="list">
    <ul class=”worklist”>
<li>...</li>
</ul>
CSS
HTML
・ページごとに最適化が可能
・デザイン修正のみならCSSだけで対応できる
メリット
・パーツを使いまわしにくい
・記述が冗長で開発、修正に時間がかかる
デメリット
デザイン、最適化重視の要件
sassで
解決
ストラクチャタイプ
HTML構造を重視、構造に沿ったCSS指定をしていく
組織の要件に合わせた
CSS設計をする
3
モジュールタイプ
可搬性のあるパーツ単位でHTMLとCSSを作成する
モジュールタイプ
可搬性のあるパーツ単位でHTMLとCSSを作成する
ul.worklist li {…}
ul.favoritelist li {…}
<ul class="worklist">
  <li>...
</ul>
<ul class="favoritelist">
  <li>...
</ul>
CSS
HTML
スピード、保守コスト重視の要件
モジュールタイプ
可搬性のあるパーツ単位でHTMLとCSSを作成する
・パーツ一覧からコピペで開発ができる
・デザイン統一がしやすい
メリット
・パーツ修正の検証範囲が広い
・ページ単位のデザイン最適化がしにくい
デメリット
組織の要件に合わせた
CSS設計をする
3
オブジェクトタイプ
class指定の組み合わせでパーツの見た目を定義する
オブジェクトタイプ
class指定の組み合わせでパーツの見た目を定義する
.headline{font-size:18px}
.caution{color:red; font-weight:bold}
.center{text-align:center}
<p class="headline caution center">...
<div class="caution center">...
CSS
HTML
フレームワーク重視の要件
オブジェクトタイプ
class指定の組み合わせでパーツの見た目を定義する
・CSSファイルを触らずに開発ができる
・コピペで開発ができる
メリット
・CSS設計にスキルを要する
・CSS修正による影響予測が困難
デメリット
組み合わせて使用してOK
単一ページ:「ストラクチャタイプ」
サイト全体:「モジュールタイプ」
未使用 :「オブジェクトタイプ」
うちの要件には合わなかった
DMMでは…
まとめ
・大規模サイトでは運用を考慮する
・CSS指定の衝突は絶対避ける
・組織の要件に合わせて設計する
ご清聴ありがとうございました
Makoto Inoue Talk of CSS fearful in fact

Contenu connexe

Tendances

SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」Takuto Wada
 
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話Yoshitaka Kawashima
 
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみようドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう増田 亨
 
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介Recruit Technologies
 
Introduction of Business Use-Case and Business Flowin Requirement Development
Introduction of Business Use-Case and Business Flowin Requirement DevelopmentIntroduction of Business Use-Case and Business Flowin Requirement Development
Introduction of Business Use-Case and Business Flowin Requirement DevelopmentKent Ishizawa
 
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装までドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで増田 亨
 
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニックinfinite_loop
 
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイルプロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル増田 亨
 
「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018
「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018
「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018Masanori Hayashi
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法についてYuji Otani
 
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜Naruhiko Ogasawara
 
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発Takafumi ONAKA
 
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーWhere狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーyoku0825
 
テストコード入門
テストコード入門テストコード入門
テストコード入門小川 昌吾
 
Mongo dbを知ろう
Mongo dbを知ろうMongo dbを知ろう
Mongo dbを知ろうCROOZ, inc.
 
モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来Hiromasa Oka
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)Takuto Wada
 
PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!Shinichi Takahashi
 
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのrediswebエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredisnasa9084
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるpospome
 

Tendances (20)

SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話強いて言えば「集約どう実装するのかな、を考える」な話
強いて言えば「集約どう実装するのかな、を考える」な話
 
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみようドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
 
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
求職サービスの検索ログを用いたクエリのカテゴリ推定とその活用事例の紹介
 
Introduction of Business Use-Case and Business Flowin Requirement Development
Introduction of Business Use-Case and Business Flowin Requirement DevelopmentIntroduction of Business Use-Case and Business Flowin Requirement Development
Introduction of Business Use-Case and Business Flowin Requirement Development
 
ドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装までドメイン駆動で開発する ラフスケッチから実装まで
ドメイン駆動で開発する ラフスケッチから実装まで
 
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
 
プロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイルプロダクトづくりのためのソフトウェア設計スタイル
プロダクトづくりのためのソフトウェア設計スタイル
 
「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018
「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018
「クソコード」言い換えのご提案 - 2018-12-15 #phpcon2018
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
 
MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜MongoDB〜その性質と利用場面〜
MongoDB〜その性質と利用場面〜
 
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
 
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーWhere狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
 
テストコード入門
テストコード入門テストコード入門
テストコード入門
 
Mongo dbを知ろう
Mongo dbを知ろうMongo dbを知ろう
Mongo dbを知ろう
 
モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来モダナイゼーションがもたらす未来
モダナイゼーションがもたらす未来
 
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
 
PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!PHPerだってMicroservicesしたい!
PHPerだってMicroservicesしたい!
 
webエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのrediswebエンジニアのためのはじめてのredis
webエンジニアのためのはじめてのredis
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
 

En vedette

なんでCSSすぐ死んでしまうん
なんでCSSすぐ死んでしまうんなんでCSSすぐ死んでしまうん
なんでCSSすぐ死んでしまうんHayato Mizuno
 
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティーヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティーYoshiki Hayama
 
2016年版 フロントエンド開発フォーマット
2016年版 フロントエンド開発フォーマット2016年版 フロントエンド開発フォーマット
2016年版 フロントエンド開発フォーマットKenya Kodaira
 
メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計拓樹 谷
 
モダンなCSS設計パターンを考える
モダンなCSS設計パターンを考えるモダンなCSS設計パターンを考える
モダンなCSS設計パターンを考える拓樹 谷
 
Thinking about CSS Architecture
Thinking about CSS ArchitectureThinking about CSS Architecture
Thinking about CSS Architecture拓樹 谷
 
今からハジメるHTML5マークアップ
今からハジメるHTML5マークアップ今からハジメるHTML5マークアップ
今からハジメるHTML5マークアップSwapSkills
 
プログラマがデザインをがんばってみた
プログラマがデザインをがんばってみたプログラマがデザインをがんばってみた
プログラマがデザインをがんばってみただいすけ ふるかわ
 
ノンデザイナーのためのWebデザイン講座
ノンデザイナーのためのWebデザイン講座ノンデザイナーのためのWebデザイン講座
ノンデザイナーのためのWebデザイン講座光利 吉田
 
プログラマがWebデザインについて考えてみた
プログラマがWebデザインについて考えてみたプログラマがWebデザインについて考えてみた
プログラマがWebデザインについて考えてみたEigoro Yamamura
 
Webデザインのトーン&マナーを導き出す手法
Webデザインのトーン&マナーを導き出す手法Webデザインのトーン&マナーを導き出す手法
Webデザインのトーン&マナーを導き出す手法Katsumi Tazuke
 
デザインのためのデザイン
デザインのためのデザインデザインのためのデザイン
デザインのためのデザインMasayuki Uetani
 
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜Ayaka Sumida
 
ノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえよう
ノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえようノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえよう
ノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえようSasaki Kouhei
 
Webデザインのセオリーを学ぼう
Webデザインのセオリーを学ぼうWebデザインのセオリーを学ぼう
Webデザインのセオリーを学ぼうToshiaki Sasaki
 
ノンデザイナーのための配色理論
ノンデザイナーのための配色理論ノンデザイナーのための配色理論
ノンデザイナーのための配色理論tsukasa obara
 
色彩センスのいらない配色講座
色彩センスのいらない配色講座色彩センスのいらない配色講座
色彩センスのいらない配色講座Mariko Yamaguchi
 

En vedette (19)

なんでCSSすぐ死んでしまうん
なんでCSSすぐ死んでしまうんなんでCSSすぐ死んでしまうん
なんでCSSすぐ死んでしまうん
 
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティーヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
 
2016年版 フロントエンド開発フォーマット
2016年版 フロントエンド開発フォーマット2016年版 フロントエンド開発フォーマット
2016年版 フロントエンド開発フォーマット
 
メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計
 
CSS の歩き方
CSS の歩き方CSS の歩き方
CSS の歩き方
 
モダンなCSS設計パターンを考える
モダンなCSS設計パターンを考えるモダンなCSS設計パターンを考える
モダンなCSS設計パターンを考える
 
Thinking about CSS Architecture
Thinking about CSS ArchitectureThinking about CSS Architecture
Thinking about CSS Architecture
 
今からハジメるHTML5マークアップ
今からハジメるHTML5マークアップ今からハジメるHTML5マークアップ
今からハジメるHTML5マークアップ
 
プログラマがデザインをがんばってみた
プログラマがデザインをがんばってみたプログラマがデザインをがんばってみた
プログラマがデザインをがんばってみた
 
Web design
Web designWeb design
Web design
 
ノンデザイナーのためのWebデザイン講座
ノンデザイナーのためのWebデザイン講座ノンデザイナーのためのWebデザイン講座
ノンデザイナーのためのWebデザイン講座
 
プログラマがWebデザインについて考えてみた
プログラマがWebデザインについて考えてみたプログラマがWebデザインについて考えてみた
プログラマがWebデザインについて考えてみた
 
Webデザインのトーン&マナーを導き出す手法
Webデザインのトーン&マナーを導き出す手法Webデザインのトーン&マナーを導き出す手法
Webデザインのトーン&マナーを導き出す手法
 
デザインのためのデザイン
デザインのためのデザインデザインのためのデザイン
デザインのためのデザイン
 
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜
WordCamp Kansai 2015 デザイン初心者向けワークショップ〜 ブログデザインを実際に作ってみよう〜
 
ノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえよう
ノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえようノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえよう
ノンデザイナーのための「デザインの判断」はとりあえずコレだけおさえよう
 
Webデザインのセオリーを学ぼう
Webデザインのセオリーを学ぼうWebデザインのセオリーを学ぼう
Webデザインのセオリーを学ぼう
 
ノンデザイナーのための配色理論
ノンデザイナーのための配色理論ノンデザイナーのための配色理論
ノンデザイナーのための配色理論
 
色彩センスのいらない配色講座
色彩センスのいらない配色講座色彩センスのいらない配色講座
色彩センスのいらない配色講座
 

大規模サイトにおける本当は怖いCSSの話