SlideShare a Scribd company logo
1 of 120
Download to read offline
QCon Tokyo 2014 Conference
Modern CSS Architecture
Hiroki Tani
モダンなCSS設計パターンを考える
Hiroki Tani
Front-end Engineer
CyberAgent, Inc.
?Why Architecture
#news h2 {	
	 border-bottom: 1px solid black;	
	 padding: 1em 0.5em;	
	 font-size: 18px;	
	 font-weight: bold;	
}
#news h2 {	
	 border-bottom: 1px solid black;	
	 padding: 1em 0.5em;	
	 font-size: 18px;	
	 font-weight: bold;	
}	
!
#faq .title {	
	 border-bottom: 1px solid black;	
	 padding: 1em 0.5em;	
	 font-size: 18px;	
	 font-weight: bold;	
}
#news h2 {	
	 border-bottom: 1px solid black;	
	 padding: 1em 0.5em;	
	 font-size: 18px;	
	 font-weight: bold;	
}	
!
#faq .title {	
	 border-bottom: 1px solid black;	
	 padding: 1em 0.5em;	
	 font-size: 18px;	
	 font-weight: bold;	
}	
!
#service .feature .title {	
	 border: 1px solid black;	
	 padding: 0.5em;	
	 font-size: 16px;	
}
.column_2 #inbox .list { ... }	
.column_3 #inbox .list { ... }	
.column_3 #inbox .list .name { ... }	
.column_3 #inbox .list .name p { ... }	
.column_3 #inbox .list .name.reply { ... }	
.column_3 #inbox .list .name.reply a { ... }	
body#top .column_3 #inbox .list.left { ... }
!important
Goals of Better CSS Architecture
-Predictable
-Reusable
-Maintainable
-Scalable
http://article.enja.io/articles/css-architecture.html
予測しやすい
再利用しやすい
保守しやすい
拡張しやすい
Modular CSS
OOCSS
Nicole Sullivan
https://github.com/stubbornella/oocss/wiki
OOCSS
-Separate structure and skin
-Separate container and content
構造と見た目の分離
コンテナとコンテンツの分離
Media object
<div class="media">	
	 <div class="media-image">	
	 	 <img src="/img/seminar/15/tani.jpg">	
	 </div>	
	 <div class="media-body">	
	 	 <p>...</p>	
	 	 <ul>	
	 	 	 <li><a>...</a></li>	
	 	 </ul>	
	 	 <p>...</p>	
	 </div>	
</div>
<div class="media">	
	 <div class="media-image">	
	 	 <img src="/img/seminar/15/tani.jpg">	
	 </div>	
	 <div class="media-body">	
	 	 <p>...</p>	
	 	 <ul>	
	 	 	 <li><a>...</a></li>	
	 	 </ul>	
	 	 <p>...</p>	
	 </div>	
</div>
<div class="media">	
	 <div class="media-image">	
	 	 <img src="/img/seminar/15/tani.jpg">	
	 </div>	
	 <div class="media-body">	
	 	 <p>...</p>	
	 	 <ul>	
	 	 	 <li><a>...</a></li>	
	 	 </ul>	
	 	 <p>...</p>	
	 </div>	
</div>
.media {	
	 /* Clearfix */	
}	
.media-image {	
	 float: left;	
	 margin-right: 10px;	
}	
.media-image 	> img {	
	 display: block;	
}	
.media-body {	
	 overflow: hidden;	
}
<div class="media skin-a">	
	 <div class="media-image">	
	 	 <img src="/img/seminar/15/tani.jpg">	
	 </div>	
	 <div class="media-body">	
	 	 <p>...</p>	
	 	 <ul>	
	 	 	 <li><a>...</a></li>	
	 	 </ul>	
	 	 <p>...</p>	
	 </div>	
</div>
<div class="media skin-b">	
	 <div class="media-image">	
	 	 <img src="/img/seminar/15/tani.jpg">	
	 </div>	
	 <div class="media-body">	
	 	 <p>...</p>	
	 	 <ul>	
	 	 	 <li><a>...</a></li>	
	 	 </ul>	
	 	 <p>...</p>	
	 </div>	
</div>
?How to build modules
It depends.
Rule of Three
‘Refactoring’
http://en.wikipedia.org/wiki/Rule_of_three_(computer_programming)
3, 6
3, 6, 9, 12, 15 ...
3, 6, 12, 24, 48 ...
3, 6, 9
3, 6, 9, 12, 15 ...
.fontSize10 {	
	 font-size: 10px	
}	
.colorRed {	
	 color: red	
}
<p class="fontSize18 colorRed">	
入力内容に誤りがあります。	
</p>
<p class="box radius10 fontSize18 colorRed">	
入力内容に誤りがあります。	
</p>
.fontSize18 {	
	 font-size: 18px	
}
.fontSize18 {	
	 font-size: 18px	
}	
!
@media only screen and (max-width : 320px) {	
	 .fontSize18 {	
	 	 font-size: 14px	
	 }	
}	
⚠
.colorRed {	
	 color: red	
}
.colorRed {	
	 color: orange;	
}
⚠
.colorRed {	
	 color: orange; /* あとで直す */	
}
⚠
⚠
?How to maintain modules
SMACSS
Jonathan Snook
http://smacss.com/ja
日本語、あります
SMACSS
-Categorization
-Naming Convention
-Decoupling CSS from HTML
カテゴライズ
命名規則
HTMLとCSSの分離
SMACSS Categories
-Base
-Layout
-Module
-State
-Theme
/* # Base */	
body, form {	
margin: 0;	
padding: 0;	
}	
a {	
color: #039;	
}	
a:hover {	
color: #03F; 	
}
/* # Layout */	
#header {	
width: 960px;	
margin: auto;	
}	
.l-article {	
border: solid #CCC;	
border-width: 1px 0 0;	
}	
.l-grid {	
margin: 0;	
padding: 0;	
list-style-type: none;	
}	
.l-grid > li {	
display: inline-block;	
margin: 0 0 10px 10px; 	
}
/* # State */	
.is-hidden {	
	 display: none;	
}	
.is-error {	
	 font-weight: bold;	
	 color: red;	
}	
.is-tab-active {	
	 border-bottom-color: transparent;	
}
/* # Theme */	
/* ## Spring Theme CSS */	
.theme-header {	
	 background-image: url("/theme/spring/
header.png");	
}	
.theme-border {	
	 1px solid pink;	 	
}
Message-box
http://cdpn.io/hKBkm
<div class="msg">	
<p>...</p>	
</div>
.msg {	
display: block;	
border: 1px solid #cccccc;	
border-radius: 8px;	
padding: 1em;	
background-color: #efefef;	
color: #333333;	
}
<div class="msg msg-error">	
<p>...</p>	
</div>
.msg {	
...	
}	
.msg-error {	
border: 1px solid #c0392b;	
background-color: #fe9282;	
}
<div class="msg msg-success">	
<p>...</p>	
</div>
.msg {	
...	
}	
.msg-success {	
border: 1px solid #27ae60;	
background-color: #99f3c9;	
}
<div class="msg msg-error">	
<h2>...</h2>	
<p>...</p>	
</div>
<div class="msg msg-error">	
<h2>...</h2>	
<p>...</p>	
</div>
.msg h2 {	
font-size: inherit;	
font-weight: bold;	
}	
!
.msg p {	
margin-top: 0.6em;	
}
.msg h2 {	
font-size: inherit;	
font-weight: bold;	
}	
!
.msg ul,	
.msg p {	
margin-top: 0.6em;	
}
⚠
<div class="msg msg-error">	
<h2 class="msg-title">	
...	
</h2>	
<ul class="msg-body">	
<li>...</li>	
<li>...</li>	
</ul>	
</div>
.msg-title {	
font-size: inherit;	
font-weight: bold;	
}	
!
.msg-body {	
margin-top: 0.6em;	
}
<div class="msg msg-error">	
<p class="msg-title">	
...	
</p>	
<ul class="msg-body">	
<li>...</li>	
<li>...</li>	
</ul>	
</div>
<div class="msg msg-error">	
<h2 class="msg-title">	
<i class="msg-title-icon ico ico-label ico-alert"></i>	
...	
</h2>	
<ul class="msg-body">	
<li>...</li>	
<li>...</li>	
</ul>	
</div>
.msg-title-icon {	
vertical-align: -0.3em;	
}	
!
.ico {	
display: inline-block;	
}	
!
.ico-alert {	
background-image: url(...);	
width: 24px;	
height: 24px;	
}	
!
.ico-label {	
margin-right: 0.3em;	
}
%ico {	
display: inline-block;	
}	
!
%ico-alert {	
background-image: url(...);	
width: 24px;	
height: 24px;	
}	
!
%ico-label {	
margin-right: 0.3em;	
}	
!
.msg-error-icon {	
vertical-align: -0.3em;	
@extend %ico;	
@extend %ico-alert;	
@extend %ico-label;	
}
!
.msg-error {	
border: 1px solid #c0392b;	
background-color: #fe9282;	
}
.msg-title {	
font-size: inherit;	
font-weight: bold;	
}	
.msg-body {	
margin-top: 0.6em;	
}
.msg {	
...	
}	
.msg-error {	
border: 1px solid #c0392b;	
background-color: #fe9282;	
}	
.msg-title {	
font-size: inherit;	
font-weight: bold;	
}
BEM
Yandex
http://bem.info/
BEM stands for ...
-Block
-Element
-Modifier
Block
Element
Modifier
.block {	
	 ...	
}	
.block__element {	
	 ...	
}	
.block_modifier {	
	 ...	
}	
.block__element_modifier {	
	 ...	
}
.nav {	
	 ...	
}	
.nav__item {	
	 ...	
}	
.nav_segmented {	
	 ...	
}	
.nav__item_segmented {	
	 ...	
}
.nav {	
	 ...	
}	
.nav__item {	
	 ...	
}	
.nav--segmented {	
	 ...	
}	
.nav__item--segmented {	
	 ...	
}
http://enja.studiomohawk.com/2012/03/20/about-html-semantics-and-front-end-architecture/
.msg {	
...	
}	
.msg--error {	
border: 1px solid #c0392b;	
background-color: #fe9282;	
}
.msg__title {	
font-size: inherit;	
font-weight: bold;	
}	
.msg__body {	
margin-top: 0.6em;	
}	
.msg__title-icon {	
vertical-align: -0.3em;	
}
MCSS
-Base
-Project
-cosmetic
http://operatino.github.io/MCSS/en/
FLOCSS
-Foundation
-Layout
-Object
https://github.com/hiloki/flocss
-Component
-Project
-Utility
Front-end Styleguide
Starbucks Style Guide
http://www.starbucks.com/static/reference/styleguide/
MailChimp Pattern Library
http://ux.mailchimp.com/patterns/
Twitter Bootstrap
http://getbootstrap.com
A Pattern Apart
http://patterns.alistapart.com/
http://alistapart.com/blog/post/getting-started-with-pattern-libraries
Code Example view
http://alistapart.com/blog/post/getting-started-with-pattern-libraries
Patchwork view
Front-end Styleguide
Front-end Styleguide
Living
KSS
http://warpspire.com/kss/styleguides/
Kalei
http://kaleistyleguide.com/
StyleDocco
http://jacobrask.github.io/styledocco/
//	
// # 見出し	
//	
// 説明文を書きます。マークダウン形式です。	
//	
// ```	
// <button type="button" class="btn btn-default">	
// ``` で囲んだ部分にデモのHTMLを記述します。	
// </button>	
// ```	
!
.btn {	
display: inline-block;	
...	
&:hover,	
&:focus {	
color: @btn-default-color;	
text-decoration: none;	
}	
}
$ styledocco -n "ProjectName" css/	
$ styledocco -n "ProjectName" -o "mydocs"	
$ styledocco -n "ProjectName" --preprocessor "lessc" less/
http://d.pr/v/46BF
⚏🎬 👤👤 ⚏🎬
👤
Building Pages
Systems
Styleguide Driven Development
http://www.stubbornella.org/content/2014/04/09/style-guide-driven-development/
Developer vs Designer ?
⚏🎬 👤👤
Developer with Designer
Best Practice
Best Practices
どんなに多くの人が貢献したとしても
どのコードも一人で書いたようにする
https://github.com/necolas/idiomatic-css
- Idiomatic CSS
All code in any code-base should look like a single person
typed it, even when many people are contributing to it.
“
”
壊れない完璧な設計を求めるのではなく
壊れたときに勇気をもって修復できる設計を
“
”
- Anonymous
Thanks.
- twitter.com/hiloki
- inkdesign.jp
- slideshare.net/hiloki
Photo credit
- http://www.flickr.com/photos/bpotstra/3490333174/sizes/l/
- http://www.flickr.com/photos/bettybroadbent/3704523854/sizes/o/
- http://www.flickr.com/photos/drewmaughan/8209503226/sizes/l/
- http://www.flickr.com/photos/biodork/6849406792/
- http://www.flickr.com/photos/43266097@N03/9444574320/sizes/l/
- http://www.flickr.com/photos/90585146@N08/8234225693/sizes/l/
- http://www.flickr.com/photos/lwr/6778863776/sizes/l/
- http://www.flickr.com/photos/jezpage/4696962046/
- http://www.flickr.com/photos/april-mo/8485249298/sizes/l/
- http://www.flickr.com/photos/4st4roth/2366615948/
- http://www.flickr.com/photos/sharman/4570412801/sizes/l/
- http://www.flickr.com/photos/kaptainkobold/3771497484/
- http://www.flickr.com/photos/laurie_pink/2549598674/sizes/l/
- http://www.flickr.com/photos/dansdata/3266946102/
- http://www.flickr.com/photos/ochre_jelly/6839227477/sizes/l/
- http://www.flickr.com/photos/in-duce/2232109985/sizes/o/
- http://www.flickr.com/photos/pgoyette/5911926699/sizes/z/
- http://www.flickr.com/photos/conradoplg/10091603396/sizes/l/
- http://www.flickr.com/photos/kaptainkobold/4441509147/sizes/l/

More Related Content

What's hot

Basics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPointBasics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPoint
Sahil Gandhi
 
Class 4 handout w css3 using j fiddle
Class 4 handout w css3 using j fiddleClass 4 handout w css3 using j fiddle
Class 4 handout w css3 using j fiddle
Erin M. Kidwell
 

What's hot (20)

Progressive Prototyping w/HTML5, CSS3 and jQuery
Progressive Prototyping w/HTML5, CSS3 and jQueryProgressive Prototyping w/HTML5, CSS3 and jQuery
Progressive Prototyping w/HTML5, CSS3 and jQuery
 
Html5 ux london
Html5 ux londonHtml5 ux london
Html5 ux london
 
Html5 intro
Html5 introHtml5 intro
Html5 intro
 
Html5 & CSS overview
Html5 & CSS overviewHtml5 & CSS overview
Html5 & CSS overview
 
Rapid HTML Prototyping with Bootstrap - Chris Griffith
Rapid HTML Prototyping with Bootstrap - Chris GriffithRapid HTML Prototyping with Bootstrap - Chris Griffith
Rapid HTML Prototyping with Bootstrap - Chris Griffith
 
Você precisa aprender Web
Você precisa aprender WebVocê precisa aprender Web
Você precisa aprender Web
 
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone developmentiPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
 
Xlrays online web tutorials
Xlrays online web tutorialsXlrays online web tutorials
Xlrays online web tutorials
 
LessCSS Presentation @ April 2015 GTALUG Meeting
LessCSS Presentation @ April 2015 GTALUG MeetingLessCSS Presentation @ April 2015 GTALUG Meeting
LessCSS Presentation @ April 2015 GTALUG Meeting
 
Html22
Html22Html22
Html22
 
Basics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPointBasics of Front End Web Dev PowerPoint
Basics of Front End Web Dev PowerPoint
 
Whirlwind Tour of SVG (plus RaphaelJS)
Whirlwind Tour of SVG (plus RaphaelJS)Whirlwind Tour of SVG (plus RaphaelJS)
Whirlwind Tour of SVG (plus RaphaelJS)
 
HTML5 & CSS3 Flag
HTML5 & CSS3 FlagHTML5 & CSS3 Flag
HTML5 & CSS3 Flag
 
Slicing the web
Slicing the webSlicing the web
Slicing the web
 
Real World Web Standards
Real World Web StandardsReal World Web Standards
Real World Web Standards
 
Guia de-estudio-2
Guia de-estudio-2Guia de-estudio-2
Guia de-estudio-2
 
Critical Rendering Path
Critical Rendering PathCritical Rendering Path
Critical Rendering Path
 
Advanced Web Scraping or How To Make Internet Your Database #seoplus2018
Advanced Web Scraping or How To Make Internet Your Database #seoplus2018Advanced Web Scraping or How To Make Internet Your Database #seoplus2018
Advanced Web Scraping or How To Make Internet Your Database #seoplus2018
 
CSS framework By Palash
CSS framework By PalashCSS framework By Palash
CSS framework By Palash
 
Class 4 handout w css3 using j fiddle
Class 4 handout w css3 using j fiddleClass 4 handout w css3 using j fiddle
Class 4 handout w css3 using j fiddle
 

Viewers also liked

WebデザイナーのためのGit勉強会 ~準備編~
WebデザイナーのためのGit勉強会 ~準備編~WebデザイナーのためのGit勉強会 ~準備編~
WebデザイナーのためのGit勉強会 ~準備編~
Satoshi Ebisawa
 

Viewers also liked (20)

Akka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldAkka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming World
 
7 key recipes for data engineering
7 key recipes for data engineering7 key recipes for data engineering
7 key recipes for data engineering
 
Preparing for distributed system failures using akka #ScalaMatsuri
Preparing for distributed system failures using akka #ScalaMatsuriPreparing for distributed system failures using akka #ScalaMatsuri
Preparing for distributed system failures using akka #ScalaMatsuri
 
WEBデザイナーのためのエディタ入門 先生:金澤 直毅
WEBデザイナーのためのエディタ入門 先生:金澤 直毅WEBデザイナーのためのエディタ入門 先生:金澤 直毅
WEBデザイナーのためのエディタ入門 先生:金澤 直毅
 
WebデザイナーのためのGit勉強会 ~準備編~
WebデザイナーのためのGit勉強会 ~準備編~WebデザイナーのためのGit勉強会 ~準備編~
WebデザイナーのためのGit勉強会 ~準備編~
 
ゆるふわCSS3
ゆるふわCSS3 ゆるふわCSS3
ゆるふわCSS3
 
WebデザイナーによるWebデザイナーのためのマーケティング入門
WebデザイナーによるWebデザイナーのためのマーケティング入門WebデザイナーによるWebデザイナーのためのマーケティング入門
WebデザイナーによるWebデザイナーのためのマーケティング入門
 
エコなWebデザイナーになろう
エコなWebデザイナーになろうエコなWebデザイナーになろう
エコなWebデザイナーになろう
 
軽量マークアップ言語で気楽にマークアップ
軽量マークアップ言語で気楽にマークアップ軽量マークアップ言語で気楽にマークアップ
軽量マークアップ言語で気楽にマークアップ
 
WEBデザイナー3年目を終えて
WEBデザイナー3年目を終えてWEBデザイナー3年目を終えて
WEBデザイナー3年目を終えて
 
CSS設計のお勉強
CSS設計のお勉強CSS設計のお勉強
CSS設計のお勉強
 
サルでもできるWebデザイン:SwapSkills
サルでもできるWebデザイン:SwapSkillsサルでもできるWebデザイン:SwapSkills
サルでもできるWebデザイン:SwapSkills
 
UXデザインの上流工程の考え方とプロセス  ~リサーチからアイデア発想そしてUIデザインへ
UXデザインの上流工程の考え方とプロセス ~リサーチからアイデア発想そしてUIデザインへUXデザインの上流工程の考え方とプロセス ~リサーチからアイデア発想そしてUIデザインへ
UXデザインの上流工程の考え方とプロセス  ~リサーチからアイデア発想そしてUIデザインへ
 
CSS の歩き方
CSS の歩き方CSS の歩き方
CSS の歩き方
 
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
悩まないコーディングをしよう! OOCSS,SMACSSを用いた、読みやすくてメンテナブルなCSS設計(Sass対応)
 
なんでCSSすぐ死んでしまうん
なんでCSSすぐ死んでしまうんなんでCSSすぐ死んでしまうん
なんでCSSすぐ死んでしまうん
 
最強オブジェクト指向言語 JavaScript 再入門!
最強オブジェクト指向言語 JavaScript 再入門!最強オブジェクト指向言語 JavaScript 再入門!
最強オブジェクト指向言語 JavaScript 再入門!
 
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティーヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
ヒューマンリーダブルな CSS 記述法(異次元編):2016年5月13日 CodeGrid 四周年記念パーティー
 
制作会社の視点で見る デザイナーのキャリアパスとスキル
制作会社の視点で見る デザイナーのキャリアパスとスキル制作会社の視点で見る デザイナーのキャリアパスとスキル
制作会社の視点で見る デザイナーのキャリアパスとスキル
 
コーディングを考慮したWebデザインガイドライン
コーディングを考慮したWebデザインガイドラインコーディングを考慮したWebデザインガイドライン
コーディングを考慮したWebデザインガイドライン
 

Similar to モダンなCSS設計パターンを考える

Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...
Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...
Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...
Mario Heiderich
 
Class 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web designClass 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web design
Erin M. Kidwell
 
IT1150CapstoneProjectFall2016TedCarr
IT1150CapstoneProjectFall2016TedCarrIT1150CapstoneProjectFall2016TedCarr
IT1150CapstoneProjectFall2016TedCarr
Ted Carr
 
HTML CSS Best Practices
HTML CSS Best PracticesHTML CSS Best Practices
HTML CSS Best Practices
hoctudau
 

Similar to モダンなCSS設計パターンを考える (20)

Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...
Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...
Copy & Pest - A case-study on the clipboard, blind trust and invisible cross-...
 
Class 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web designClass 4 handout two column layout w mobile web design
Class 4 handout two column layout w mobile web design
 
HTML Web Devlopment presentation css.ppt
HTML Web Devlopment presentation css.pptHTML Web Devlopment presentation css.ppt
HTML Web Devlopment presentation css.ppt
 
css.ppt
css.pptcss.ppt
css.ppt
 
css.ppt
css.pptcss.ppt
css.ppt
 
Diazo: Bridging Designers and Programmers
Diazo: Bridging Designers and ProgrammersDiazo: Bridging Designers and Programmers
Diazo: Bridging Designers and Programmers
 
I pv6+at+caribbean+sector
I pv6+at+caribbean+sectorI pv6+at+caribbean+sector
I pv6+at+caribbean+sector
 
Introduction to web components
Introduction to web componentsIntroduction to web components
Introduction to web components
 
IT1150CapstoneProjectFall2016TedCarr
IT1150CapstoneProjectFall2016TedCarrIT1150CapstoneProjectFall2016TedCarr
IT1150CapstoneProjectFall2016TedCarr
 
When dynamic becomes static - the next step in web caching techniques
When dynamic becomes static - the next step in web caching techniquesWhen dynamic becomes static - the next step in web caching techniques
When dynamic becomes static - the next step in web caching techniques
 
TOSSUG HTML5 讀書會 新標籤與表單
TOSSUG HTML5 讀書會 新標籤與表單TOSSUG HTML5 讀書會 新標籤與表單
TOSSUG HTML5 讀書會 新標籤與表單
 
Build Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje JurišićBuild Better Responsive websites. Hrvoje Jurišić
Build Better Responsive websites. Hrvoje Jurišić
 
Advanced CSS Troubleshooting
Advanced CSS TroubleshootingAdvanced CSS Troubleshooting
Advanced CSS Troubleshooting
 
Making Links Magical Again with CSS
Making Links Magical Again with CSSMaking Links Magical Again with CSS
Making Links Magical Again with CSS
 
HTML CSS Best Practices
HTML CSS Best PracticesHTML CSS Best Practices
HTML CSS Best Practices
 
Advanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyAdvanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & Efficiency
 
Polytechnic 1.0 Granada
Polytechnic 1.0 GranadaPolytechnic 1.0 Granada
Polytechnic 1.0 Granada
 
关于 Html5 那点事
关于 Html5 那点事关于 Html5 那点事
关于 Html5 那点事
 
ACSS: Rethinking CSS Best Practices
ACSS: Rethinking CSS Best PracticesACSS: Rethinking CSS Best Practices
ACSS: Rethinking CSS Best Practices
 
Class15
Class15Class15
Class15
 

More from 拓樹 谷 (7)

CSS設計の理想と現実
CSS設計の理想と現実CSS設計の理想と現実
CSS設計の理想と現実
 
Why Sass?
Why Sass?Why Sass?
Why Sass?
 
メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計メンテナブルでありつづけるためのCSS設計
メンテナブルでありつづけるためのCSS設計
 
CSS Components
CSS ComponentsCSS Components
CSS Components
 
How to Win the Heart of CSS Boys
How to Win the Heart of CSS BoysHow to Win the Heart of CSS Boys
How to Win the Heart of CSS Boys
 
High Performance Webdesign
High Performance WebdesignHigh Performance Webdesign
High Performance Webdesign
 
Thinking about CSS Architecture
Thinking about CSS ArchitectureThinking about CSS Architecture
Thinking about CSS Architecture
 

Recently uploaded

一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证
一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证
一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证
khuurq8kz
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
wpkuukw
 
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
drmarathore
 
422368378-Laos-Architecture.pdfmmmmkkkkmmm
422368378-Laos-Architecture.pdfmmmmkkkkmmm422368378-Laos-Architecture.pdfmmmmkkkkmmm
422368378-Laos-Architecture.pdfmmmmkkkkmmm
KarenNares2
 
定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制
定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制
定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制
eqaqen
 
怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证
怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证
怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证
eeanqy
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
wpkuukw
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement
210303105569
 
In Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in Riyadh
In Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in RiyadhIn Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in Riyadh
In Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in Riyadh
ahmedjiabur940
 
如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证
ugzga
 
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
eqaqen
 

Recently uploaded (20)

一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证
一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证
一比一原版澳洲堪培拉大学毕业证(UC毕业证书)毕业证成绩单留信认证
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
 
Morgenbooster: Storytelling in Identity Design
Morgenbooster: Storytelling in Identity DesignMorgenbooster: Storytelling in Identity Design
Morgenbooster: Storytelling in Identity Design
 
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
Abortion pills in Kuwait 🚚+966505195917 but home delivery available in Kuwait...
 
TRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptxTRose UXPA Experience Design Concord .pptx
TRose UXPA Experience Design Concord .pptx
 
422368378-Laos-Architecture.pdfmmmmkkkkmmm
422368378-Laos-Architecture.pdfmmmmkkkkmmm422368378-Laos-Architecture.pdfmmmmkkkkmmm
422368378-Laos-Architecture.pdfmmmmkkkkmmm
 
定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制
定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制
定(购)莫纳什大学毕业证(Monash毕业证)成绩单学位证专业定制
 
怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证
怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证
怎样办理伦敦国王学院毕业证(KCL毕业证书)成绩单留信认证
 
Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...
Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...
Abortion pills in Riyadh +966572737505 <> buy cytotec <> unwanted kit Saudi A...
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement
 
Redefining Affordable Housing in Gurgaon The Role of Housing Architects from ...
Redefining Affordable Housing in Gurgaon The Role of Housing Architects from ...Redefining Affordable Housing in Gurgaon The Role of Housing Architects from ...
Redefining Affordable Housing in Gurgaon The Role of Housing Architects from ...
 
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
NO1 Top Pakistani Amil Baba Real Amil baba In Pakistan Najoomi Baba in Pakist...
 
Spring Summer 26 Colors Trend Book Peclers Paris
Spring Summer 26 Colors Trend Book Peclers ParisSpring Summer 26 Colors Trend Book Peclers Paris
Spring Summer 26 Colors Trend Book Peclers Paris
 
In Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in Riyadh
In Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in RiyadhIn Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in Riyadh
In Saudi Arabia Jeddah (+918761049707)) Buy Abortion Pills For Sale in Riyadh
 
Branding in the Psychedelic Landscape Report.pdf
Branding in the Psychedelic Landscape Report.pdfBranding in the Psychedelic Landscape Report.pdf
Branding in the Psychedelic Landscape Report.pdf
 
Academic Portfolio (2017-2021) .pdf
Academic Portfolio (2017-2021)      .pdfAcademic Portfolio (2017-2021)      .pdf
Academic Portfolio (2017-2021) .pdf
 
如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证
如何办理(Columbia College毕业证书)纽约市哥伦比亚大学毕业证成绩单本科硕士学位证留信学历认证
 
18+ Young ℂall Girls Vadodara Book Esha 7427069034 Top Class ℂall Girl Serviℂ...
18+ Young ℂall Girls Vadodara Book Esha 7427069034 Top Class ℂall Girl Serviℂ...18+ Young ℂall Girls Vadodara Book Esha 7427069034 Top Class ℂall Girl Serviℂ...
18+ Young ℂall Girls Vadodara Book Esha 7427069034 Top Class ℂall Girl Serviℂ...
 
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
一比一定(购)西悉尼大学毕业证(WSU毕业证)成绩单学位证
 

モダンなCSS設計パターンを考える