Submit Search
Oocssとかついでにsmacssとbemの話も
Download as PPTX, PDF
5 likes
2,340 views
Yumi uniq Ishizaki
オブジェクト指向のCSSの話とか、smacssとbemの話とか、社内勉強会で好き勝手にしゃべってみました
Technology
Read more
1 of 29
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
More Related Content
What's hot
(20)
PDF
HTML5マークアップの心得と作法
Futomi Hatano
PDF
使いやすいWordPressのためのCSSのつくりかた
Hiroshi Urabe
PDF
今からハジメるHTML5マークアップ
SwapSkills
PDF
「html5 boilerplate」から考える、これからのマークアップ
Yasuhito Yabe
PPTX
SMACSS入門
iPride Co., Ltd.
PDF
CSS設計のお勉強
MarlboroLand
PDF
設計から実装まで、今すぐ始める高速化
masaaki komori
PDF
WordPress を使いこなそう
Wataru OKAMOTO
PDF
HTML5, きちんと。
Masataka Yakura
PDF
今からハジメるHTML5プログラミング
SwapSkills
PDF
今日から使える! HTML/CSS/JSの シンプルテクニック15選
Horiguchi Seito
PPTX
第10回勉強会 CSS設計について
takumaro web
PPTX
css基本。
web12
PDF
情報編集(Web) HTML5とは何か? HTML5、はじめの一歩
Atsushi Tadokoro
PDF
HTML5 & The Web Platform
Masataka Yakura
PDF
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
Yoshiki Hayama
PDF
Polymerで作る次世代ウェブサイト
Eiji Kitamura
KEY
コーディングが上達するコツ
evol-ni
PDF
⑯jQueryをおぼえよう!その2
Nishida Kansuke
PDF
Web Platform -- Moving Forward!
Masataka Yakura
HTML5マークアップの心得と作法
Futomi Hatano
使いやすいWordPressのためのCSSのつくりかた
Hiroshi Urabe
今からハジメるHTML5マークアップ
SwapSkills
「html5 boilerplate」から考える、これからのマークアップ
Yasuhito Yabe
SMACSS入門
iPride Co., Ltd.
CSS設計のお勉強
MarlboroLand
設計から実装まで、今すぐ始める高速化
masaaki komori
WordPress を使いこなそう
Wataru OKAMOTO
HTML5, きちんと。
Masataka Yakura
今からハジメるHTML5プログラミング
SwapSkills
今日から使える! HTML/CSS/JSの シンプルテクニック15選
Horiguchi Seito
第10回勉強会 CSS設計について
takumaro web
css基本。
web12
情報編集(Web) HTML5とは何か? HTML5、はじめの一歩
Atsushi Tadokoro
HTML5 & The Web Platform
Masataka Yakura
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
Yoshiki Hayama
Polymerで作る次世代ウェブサイト
Eiji Kitamura
コーディングが上達するコツ
evol-ni
⑯jQueryをおぼえよう!その2
Nishida Kansuke
Web Platform -- Moving Forward!
Masataka Yakura
Viewers also liked
(17)
PDF
What's Object-Oriented CSS (japanese)
shinobu tsutsui
PDF
Bem Study
Haraguchi Go
PDF
モダンCSS設計と BEMという開発手法
Kenji Karahashi
PDF
CSSの新しい設計思想 PRECSSを作りました
Atsushi Handa
PDF
CSSにもオブジェクト指向を - OOCSSことはじめ
Nisei Kimura
PDF
BEM it!
Max Shirshin
KEY
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
Nicole Sullivan
PDF
コンポーネント指向と余白の設計
Manabu Yasuda
PPT
מביישן לפלרטטן
Stas Segin
PPT
Inleiding \'Digivaardig\' bij Koninklijke Visio/OTC op 18 juni 2012
Nederlands Centrum Jeugdgezondheid
PDF
Brandon Steiner: Speaker
Brandon Steiner
PPT
Sliven1
niod
PPTX
Excess hair growth
hpinn
PDF
Nerve cell
Biobiome
PPT
Guvenlik genel bakis
ahmetziya
PDF
ccnp route 642 902
Yashwant Aditya
PDF
חוברת קורס
Stas Segin
What's Object-Oriented CSS (japanese)
shinobu tsutsui
Bem Study
Haraguchi Go
モダンCSS設計と BEMという開発手法
Kenji Karahashi
CSSの新しい設計思想 PRECSSを作りました
Atsushi Handa
CSSにもオブジェクト指向を - OOCSSことはじめ
Nisei Kimura
BEM it!
Max Shirshin
The Cascade, Grids, Headings, and Selectors from an OOCSS Perspective, Ajax ...
Nicole Sullivan
コンポーネント指向と余白の設計
Manabu Yasuda
מביישן לפלרטטן
Stas Segin
Inleiding \'Digivaardig\' bij Koninklijke Visio/OTC op 18 juni 2012
Nederlands Centrum Jeugdgezondheid
Brandon Steiner: Speaker
Brandon Steiner
Sliven1
niod
Excess hair growth
hpinn
Nerve cell
Biobiome
Guvenlik genel bakis
ahmetziya
ccnp route 642 902
Yashwant Aditya
חוברת קורס
Stas Segin
Ad
Similar to Oocssとかついでにsmacssとbemの話も
(20)
ZIP
実践Sass 前編
Azusa Tomita
PPTX
CSS拡張メタ言語 Sass が何者かを紹介する | SakanaTech
lyca chigyo
PDF
First sass
Toshiaki Sasaki
PDF
壊れやすいCSS
Masahiro Kobayashi
PDF
Sassをはじめからていねいに<概要−基礎編>
Horiguchi Seito
KEY
compassで簡単! CSS3を手軽に利用する
Kazuya Hiruma
PDF
React で CSS カプセル化の可能性を考える
Yutaro Miyazaki
PDF
ADC OnAir 第5回 『レスポンシブ Web デザインを学ぼう!実装編』
Naoki Matsuda
PDF
メディア芸術基礎 Ⅰ 第5回:CSSレイアウト
Atsushi Tadokoro
PPTX
Sass紹介
Daisuke Hirayama
PDF
Firefox OSアプリ 「ModeView」
Hideki Akiba
PDF
CSS3の最新事情
Makoto Kato
PDF
Sass/Compass講習会
Beeworks
PDF
㉗HTML5+jQueryでお絵かき
Nishida Kansuke
PDF
Sass introduction (jscafe 10)
Ryuma Tsukano
PDF
大阪Node学園八時限目 「コーディングのためのless - 基礎編 -」
Shunsuke Watanabe
PDF
Sassを使ってみよう
GIG inc.
PPTX
HTML5 on ASP.NET
Fujio Kojima
PDF
Less - first step
Kohki Nakashima
PDF
Native x Webでいいとこどり開発 ~ピグトーク~
Kazunari Hara
実践Sass 前編
Azusa Tomita
CSS拡張メタ言語 Sass が何者かを紹介する | SakanaTech
lyca chigyo
First sass
Toshiaki Sasaki
壊れやすいCSS
Masahiro Kobayashi
Sassをはじめからていねいに<概要−基礎編>
Horiguchi Seito
compassで簡単! CSS3を手軽に利用する
Kazuya Hiruma
React で CSS カプセル化の可能性を考える
Yutaro Miyazaki
ADC OnAir 第5回 『レスポンシブ Web デザインを学ぼう!実装編』
Naoki Matsuda
メディア芸術基礎 Ⅰ 第5回:CSSレイアウト
Atsushi Tadokoro
Sass紹介
Daisuke Hirayama
Firefox OSアプリ 「ModeView」
Hideki Akiba
CSS3の最新事情
Makoto Kato
Sass/Compass講習会
Beeworks
㉗HTML5+jQueryでお絵かき
Nishida Kansuke
Sass introduction (jscafe 10)
Ryuma Tsukano
大阪Node学園八時限目 「コーディングのためのless - 基礎編 -」
Shunsuke Watanabe
Sassを使ってみよう
GIG inc.
HTML5 on ASP.NET
Fujio Kojima
Less - first step
Kohki Nakashima
Native x Webでいいとこどり開発 ~ピグトーク~
Kazunari Hara
Ad
More from Yumi uniq Ishizaki
(10)
PDF
スクラムする前に知って欲しいアジャイルさんっぽいこと
Yumi uniq Ishizaki
PDF
デザイナーにGitは必要?
Yumi uniq Ishizaki
PDF
connpass design at BPStudy #88
Yumi uniq Ishizaki
PDF
Pythonと出会ったデザイナーの話 #PyLadiesTokyo
Yumi uniq Ishizaki
PDF
絵描きさんあるあるPhotoshop技 DIST3
Yumi uniq Ishizaki
PDF
真のレシポンシブって何だろう
Yumi uniq Ishizaki
PDF
とっさのデザイン〜ボタン編〜
Yumi uniq Ishizaki
PPTX
アイディア発想法とかモノ作りを初める前にやること
Yumi uniq Ishizaki
KEY
とある色の決め方
Yumi uniq Ishizaki
PPTX
Semantic html が止まらない
Yumi uniq Ishizaki
スクラムする前に知って欲しいアジャイルさんっぽいこと
Yumi uniq Ishizaki
デザイナーにGitは必要?
Yumi uniq Ishizaki
connpass design at BPStudy #88
Yumi uniq Ishizaki
Pythonと出会ったデザイナーの話 #PyLadiesTokyo
Yumi uniq Ishizaki
絵描きさんあるあるPhotoshop技 DIST3
Yumi uniq Ishizaki
真のレシポンシブって何だろう
Yumi uniq Ishizaki
とっさのデザイン〜ボタン編〜
Yumi uniq Ishizaki
アイディア発想法とかモノ作りを初める前にやること
Yumi uniq Ishizaki
とある色の決め方
Yumi uniq Ishizaki
Semantic html が止まらない
Yumi uniq Ishizaki
Recently uploaded
(13)
PDF
第3回デジタル理学療法研究会学術大会シンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」の講演資料.
Matsushita Laboratory
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2025_報告会資料_渡辺さ...
IGDA Japan SIG-Audio
PDF
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2024_報告会資料_増野さ...
IGDA Japan SIG-Audio
PDF
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
PDF
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
PDF
マルチAIエージェントの産業界での実践に向けたオープンソース活動の展望 - Japan Regional User Group (RUG) Meet-Up
Kosaku Kimura
PDF
漁船に搭載されている電子装備と漁法について_VRC海洋学研究会_海のLT会発表資料
Yuuitirou528 default
PDF
AIツールを使った研究の効率化 Improving Research Efficiency with AI Tools
Tohoku University
PDF
第3回デジタル理学療法学会のシンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」での話題提供
Matsushita Laboratory
PDF
API認可を支えるKeycloakの基本と設計の考え方 ~ OAuth/OIDCによるAPI保護のベストプラクティス ~
Hitachi, Ltd. OSS Solution Center.
PDF
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
PDF
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
PDF
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
第3回デジタル理学療法研究会学術大会シンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」の講演資料.
Matsushita Laboratory
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2025_報告会資料_渡辺さ...
IGDA Japan SIG-Audio
SIG-AUDIO 2025 Vol.02 オンラインセミナー 「GDC2025 オーディオ報告会」SIG-Audio_GDC2024_報告会資料_増野さ...
IGDA Japan SIG-Audio
安尾 萌, 松下 光範. 環境馴致を計量可能にするための試み,人工知能学会第4回仕掛学研究会, 2018.
Matsushita Laboratory
安尾 萌, 北村 茂生, 松下 光範. 災害発生時における被害状況把握を目的とした情報共有システムの基礎検討, 電子情報通信学会HCGシンポジウム2018...
Matsushita Laboratory
マルチAIエージェントの産業界での実践に向けたオープンソース活動の展望 - Japan Regional User Group (RUG) Meet-Up
Kosaku Kimura
漁船に搭載されている電子装備と漁法について_VRC海洋学研究会_海のLT会発表資料
Yuuitirou528 default
AIツールを使った研究の効率化 Improving Research Efficiency with AI Tools
Tohoku University
第3回デジタル理学療法学会のシンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」での話題提供
Matsushita Laboratory
API認可を支えるKeycloakの基本と設計の考え方 ~ OAuth/OIDCによるAPI保護のベストプラクティス ~
Hitachi, Ltd. OSS Solution Center.
論文紹介:Unbiasing through Textual Descriptions: Mitigating Representation Bias i...
Toru Tamaki
安尾 萌, 藤代 裕之, 松下 光範. 協調的情報トリアージにおけるコミュニケーションの影響についての検討, 第11回データ工学と情報マネジメントに関する...
Matsushita Laboratory
論文紹介:AutoPrompt: Eliciting Knowledge from Language Models with Automatically ...
Toru Tamaki
Oocssとかついでにsmacssとbemの話も
1.
OOCSSとか ついでにSMACSSとBEMも Created
by Yumi Hashizume / @uniq 20140702
2.
お前、誰よ • uniqだよー
• デザイナーだよー • いまは夏コミ原稿中
3.
これから話すこと • しんどいCSS
• 私なりのOOCSS • SMACSSの紹介 • BEMの紹介
4.
こんな事あるあるー 黄色いお知らせエリアが欲しいよ .information_area
{ width:960px; padding: 10px; border: 1px solid #E6E5DA; background-color: #FFFCE2; border-radius: 3px; }
5.
さらに 緑のお知らせエリアも欲しいので、おなしゃす! .information_area
{ width:960px; padding: 10px; border: 1px solid #E6E5DA; background-color: #FFFCE2; border-radius: 3px; } .information_green_area { width:960px; padding: 10px; border: 1px solid #5BC077; background-color: #B4ECAC; border-radius: 3px }
6.
さらにさらに .information_area {
width:960px; padding: 10px; border: 1px solid #E6E5DA; background-color: #FFFCE2; border-radius: 3px; } .information_green_area { width:960px; padding: 10px; border: 1px solid #5BC077; background-color: #B4ECAC; border-radius: 3px } .alert_area { width:960px; padding: 10px; border: 1px solid #FFA115; background-color: #E00; color:#fff; border-radius: 3px }
7.
コードが重複しまくり .information_area {
width:960px; padding: 10px; border: 1px solid #E6E5DA; background-color: #FFFCE2; border-radius: 3px; } .information_green_area { width:960px; padding: 10px; border: 1px solid #5BC077; background-color: #B4ECAC; border-radius: 3px } .alert_area { width:960px; padding: 10px; border: 1px solid #FFA115; background-color: #E00; color:#fff; border-radius: 3px }
8.
さらにさらにさらに ポップアップでは幅600pxにしたいとか… このページのは文字が大きくしたいとか…
3カラムバージョンも欲しいとか… .information_area { width:960px; padding: 10px; border: 1px solid #E6E5DA; background-color: #FFFCE2; border-radius: 3px; } .popup .information_area { width:600px; } .information_green_area { width:960px; padding: 10px; border: 1px solid #5BC077; background-color: #B4ECAC; border-radius: 3px } .event_page .information_green_area { font-size:24px; } .alert_area { width:960px; padding: 10px; border: 1px solid #FFA115; background-color: #E00; color:#fff; border-radius: 3px } .col_3.information_area, .col_3.information_green_area, .col_3.alert_area { width:320px; }
9.
もうぐちゃぐちゃ • メンテしにくい
• 拡張しにくい • コードも長いので描画遅い
10.
そこでOOCSS 共通なものは共通なもの同士で オブジェクトとしてまとめる
• 作業効率アップ • メンテナンス性アップ • 描画速度アップ
11.
つまりこんな感じ <div class="row">
<div class="container"> <div class="col_3"><div class="box box_imformation">いわゆる普通のお知らせ</div></div> <div class="col_3"><div class="box box_success">成功しちゃったお知らせ</div></div> <div class="col_3"><div class="box box_alert">マジでヤバいお知らせ</div> </div> </div> .row { /*bootstrap参考*/ } .container { width:960px; } .container_popup { width:600px; } .font_24 {font-size:24px;} /*特例的なサイズ変更は、昔からある有りがちcommon.cssを*/ .col_3 { width:33.3%} .box { padding: 10px; border-radius: 3px; } .box_information { border: 1px solid #E6E5DA; background-color: #FFFCE2; } .box_success { border: 1px solid #5BC077; background-color: #B4ECAC; } .box_alert { border: 1px solid #FFA115; background-color: #E00; color:#fff; }
12.
ぜんぜんセマンティッ クじゃない!! ある程度、妥協しましょう
…柔軟に生きよう。社会は厳しい。。。 そこそこセマンティックであれば良い
13.
STRUCTURE とSKIN を分け
て設定する • structure • 位置とか。margin, padding, position... • カタチっぽいclass名にする • skin • 色とか。デザインっぽい効果とか。color, background, border... • デザインっぽい、もしくはセマンティックなclass名 ※ サイトによって解釈は違う
14.
例えるなら だめな例 <!--
だめな例--> <div class="リラックマのお皿にのったケチャップかけたチーズ入りオムレツ"> だめな例 </div> 良い例 <!-- 良い例--> <div class="リラックマのお皿"> <div class="ケチャップチーズオムレツ"> 良い例 </div> </div>
15.
いままでは… 要素を見て、どんなスタイルか把握していた
16.
これからは… class名を見て、どんなスタイルか把握できるようにして いく
17.
あとID やめよう jsやページ内リンクに使うのはありだけど、style指定する
ために使うのは、余程の理由がない限りやめていきたい
18.
CSSでID使うと困る点 上書きが大変。いちいちIDつけないと上書きできない。 ID効果は強いんです。
#main a {color:#000;} a.btn, /* 全てのページのbtn文字色を白くしたい*/ #main a.btn { /* mainのボタンにも効果が必要なので、こちらも指定しないといけない*/ color:#fff; } #main .event_list a {color:#f00;} #main .page_join a {color:#999;}
19.
IDのない幸せな世界 上書きが楽。 a
{color:#000;} a.btn {color:#fff;} .event_list a {color:#f00;} .page_join a {color:#999;}
20.
言いたいこと • 継ぎ足し継ぎ足しのCSSはツライ
• OOCSSの精神で設計しとこ • CSSを修正するときは、「足す」のではなく、「 引く」「整理する」をしていこう
21.
SMACSS の紹介 SMACSS(スマックス)
22.
SMACSSのCSSカテゴリ • Base
• デフォルトスタイル • Layout • ページをエリアに分割したもの(接頭語:l-) • Module • 再利用可能なパーツ • State • LayoutやModuleの特定の状態(接頭語:is-) • jsも使いますよー • Theme • ブログのテーマ的な
23.
SMACSSのイメージ
24.
BEM の紹介
25.
BEMの基本 • Block
:ページを構成する独立パーツ • Element :Black内の一部として役割を果たすも の • Modifire :BlockやElementの状態・属性
26.
BEMの命名規則 .Block__Element-Modifire
27.
BEMのイメージ
28.
事例紹介
29.
THE END 美味しいお酒を飲むために効率よく仕事したい
Download