sassられ指南

37

Upload: taiju-higashi

Post on 04-Jul-2015

5.224 views

Category:

Technology


1 download

DESCRIPTION

at 2011.06.04 UPGRADE JAPAN!!

TRANSCRIPT

Page 1: Sassられ指南

Sassられ指南in UPGRADE JAPAN!!

2011.6.4 satby @taiju

2011年6月6日月曜日

Page 2: Sassられ指南

自己紹介名前: 東 大樹(Higashi Taiju)勤務先: ベースライン株式會社職種: テクニカルディレクターブログ: あと味Twitter: @taijufacebook: facebook.com/taiju.higashi

2011年6月6日月曜日

Page 3: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 4: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 5: Sassられ指南

• CSSの至らないところを補って、さらに便利に拡張したCSSメタ言語(since 2009)

• 主な利用者はRubyプログラマ(でした)• 2010年5月にCSS完全互換のSCSSという新シンタックスを公開

• 記法は.sassか.scssを選べる• SCSSは見た目が限りなくCSSに近い• マークアップエンジニア界隈で流行りはじめてるっぽい

Sassとは?

2011年6月6日月曜日

Page 6: Sassられ指南

Sassとは?

2011年6月6日月曜日

Page 7: Sassられ指南

Sassとは?$main-color: #ce4dd6;$style: solid;

#navbar { border-bottom: { color: $main-color; style: $style; }}

a { color: $main-color; &:hover { border-bottom: $style 1px; }}

2011年6月6日月曜日

Page 8: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 9: Sassられ指南

1. style.scssを書く2. sassコマンドでstyle.scssをstyle.cssに変換

3. style.cssをlink要素で読み込む

Sassを使った場合の制作フロー

2011年6月6日月曜日

Page 10: Sassられ指南

黒い画面が必要です

2011年6月6日月曜日

Page 11: Sassられ指南

$ sass style.scss:style.css

sassコマンド

変換前のファイル名

変換後のファイル名

2011年6月6日月曜日

Page 12: Sassられ指南

変換前$main-color: #ce4dd6;$style: solid;

#navbar { border-bottom: { color: $main-color; style: $style; }}

a { color: $main-color; &:hover { border-bottom: $style 1px; }}

2011年6月6日月曜日

Page 13: Sassられ指南

変換前#navbar { border-bottom-color: #ce4dd6; border-bottom-style: solid; }

a { color: #ce4dd6; } a:hover { border-bottom: solid 1px; }

2011年6月6日月曜日

Page 14: Sassられ指南

出力形式は好みによって

2011年6月6日月曜日

Page 15: Sassられ指南

$ sass -t compact style.scss:style.css

出力形式

$ sass -t compressed style.scss:style.css$ sass -t expanded style.scss:style.css

出力形式を選択するコマンドオプション

2011年6月6日月曜日

Page 16: Sassられ指南

もっと楽なおすすめなやつ

2011年6月6日月曜日

Page 17: Sassられ指南

更新の監視自動出力

$ sass --watch style.scss:style.css

2011年6月6日月曜日

Page 18: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 19: Sassられ指南

Sassるとは?

CSSにて苦痛に悩まされている人を優しくケアすること

2011年6月6日月曜日

Page 20: Sassられ指南

少しでもプログラミングをかじったことがある人はCSSの冗長性に我慢出来ない

2011年6月6日月曜日

Page 21: Sassられ指南

プログラマは怠慢

2011年6月6日月曜日

Page 22: Sassられ指南

プログラマ以外ももっと楽しましょう

2011年6月6日月曜日

Page 23: Sassられ指南

Sassられ方を指南します

2011年6月6日月曜日

Page 24: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 25: Sassられ指南

子孫セレクタを使ったCSSの記述パターン

#contents { ... }#contents .news { ... }#contents .news .twitter { ... }#contents .news .blog { ... }#contents .news .twitter ul { ... }...

2011年6月6日月曜日

Page 26: Sassられ指南

えっ、なんで同じセレクタを何度も書かなきゃいけないの?

2011年6月6日月曜日

Page 27: Sassられ指南

By stevendepolohttp://flic.kr/p/81Z1JA

ストレス

2011年6月6日月曜日

Page 28: Sassられ指南

By Zoeffhttp://flic.kr/p/9nd9y6

Sassられよう

2011年6月6日月曜日

Page 29: Sassられ指南

SCSSの記述パターン#contents { ... .news { ... .twitter { ... ul { ... } } .blog { ... } }}

2011年6月6日月曜日

Page 30: Sassられ指南

同じセレクタを何度も記述する必要はなくなりますHTML構造の変更にも強くなります

2011年6月6日月曜日

Page 31: Sassられ指南

SCSSの記述パターン(その他)

/* 擬似セレクタ */a { &:link { ... } &:visited { ... } &:hover { ... } &:active { ... }}

/* class */#nav ul li { &.selected { ... }}

/* プロパティ */h1 { font: { family: Verdana; size: 130%; weight: bold; }}

2011年6月6日月曜日

Page 32: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 33: Sassられ指南

変数を使わないCSSの記述パターン

#header { background-color: #349ac1;}・・・省略・・・#footer { background-color: #349ac1;}

2011年6月6日月曜日

Page 34: Sassられ指南

えっ、このカラーコード何度も使うのに毎回コピペするの?

変更したら全部置換するの?

2011年6月6日月曜日

Page 35: Sassられ指南

By Lara604http://flic.kr/p/4BnRVs

ストレス

2011年6月6日月曜日

Page 36: Sassられ指南

By Zoeffhttp://flic.kr/p/9nd9y6

Sassられよう

2011年6月6日月曜日

Page 37: Sassられ指南

変数を使ったSCSSの記述パターン

$base-color: #349ac1;

#header { background-color: $base-color;}・・・省略・・・#footer { background-color: $base-color;}

2011年6月6日月曜日

Page 38: Sassられ指南

何度も使う値は変数に代入できます任意の名前でわかりやすくできます

変更にも強くなります

2011年6月6日月曜日

Page 39: Sassられ指南

演算もできます

2011年6月6日月曜日

Page 40: Sassられ指南

変数と演算を使ったSCSSの記述パターン

$body_width: 1100px;$sidenav_width: 200px;

#contents {  width: $body_width - $sidenav_width;}

$base-color: #666;#header { background-color: $base-color; .navigation { background-color: darken($base-color, 40%); }}

2011年6月6日月曜日

Page 41: Sassられ指南

演算を使うことで電卓が不要になります場合によっては便利な関数も使えます

2011年6月6日月曜日

Page 42: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 43: Sassられ指南

clearfix

#header { \zoom: 1;}#header:after { content: ‘’; display: block; clear: both; height: 0;}

#contents { \zoom: 1;}#contents:after { content: ‘’; display: block; clear: both; height: 0;}

※普通はこれがめんどいので、classを作ると思いますが...

2011年6月6日月曜日

Page 44: Sassられ指南

えっ、クリアランスしたい要素すべてに

こんなめんどい記述するの?

2011年6月6日月曜日

Page 46: Sassられ指南

By Zoeffhttp://flic.kr/p/9nd9y6

Sassられよう

2011年6月6日月曜日

Page 47: Sassられ指南

Mixinを使ったclearfix

@mixin clearfix { \zoom: 1; &:after { content: ‘’; display: block; clear: both; height: 0; }}

#header { @include clearfix; ...}#contents { @include clearfix; ...}

2011年6月6日月曜日

Page 48: Sassられ指南

プロパティの固まりを共有できます@includeすると中に展開されます最初は変数の高機能版と捉えればOK

2011年6月6日月曜日

Page 49: Sassられ指南

似たような機能で@extendというものもありますが気になる方は「あと味」の以下の記事を

参照ください

Sassの@extendでCSSとHTMLをシンプルにhttp://d.hatena.ne.jp/jdg/20110603/1307084785

2011年6月6日月曜日

Page 50: Sassられ指南

その他@mixinと変数・演算を使ったCSS Spritesの事例もあります

SassでCSS Spritesをなるべく簡単に書きたいhttp://d.hatena.ne.jp/jdg/20110521/1305980066

2011年6月6日月曜日

Page 51: Sassられ指南

今後しばらく今日紹介しきれなかったSassのことを

フォローアップをかねてブログに書いていく予定です

2011年6月6日月曜日

Page 52: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 53: Sassられ指南

CSSの@import

@import “common.css”;@import “home.css”;@import “about.css”;@import “contact.css”;@import “news.css”;

2011年6月6日月曜日

Page 54: Sassられ指南

えっ、httpリクエストが毎行発生するの?

気軽にファイル分けたいだけなんだけど

2011年6月6日月曜日

Page 55: Sassられ指南

By sahlgoodehttp://flic.kr/p/8NydEa

ストレス

2011年6月6日月曜日

Page 56: Sassられ指南

By Zoeffhttp://flic.kr/p/9nd9y6

Sassられよう

2011年6月6日月曜日

Page 57: Sassられ指南

SCSSの@import

@import “common.scss”;@import “home.scss”;@import “about.scss”;@import “contact.scss”;@import “news.scss”;

2011年6月6日月曜日

Page 58: Sassられ指南

見た目は拡張子以外変わりませんが動作は全然違います

2011年6月6日月曜日

Page 59: Sassられ指南

/* 毎行HTTPリクエストが発生 */@import “common.css”;@import “home.css”;@import “about.css”;@import “contact.css”;@import “news.css”;

/* すべて@importの記述されたscssに結合 */@import “common.scss”;@import “home.scss”;@import “about.scss”;@import “contact.scss”;@import “news.scss”;

2011年6月6日月曜日

Page 60: Sassられ指南

httpリクエストは1回で済みますSCSSで別ファイルとして管理できます

2011年6月6日月曜日

Page 61: Sassられ指南

大きめのCSSフレームワークなどを気軽にimportできます

2011年6月6日月曜日

Page 62: Sassられ指南

Agenda• Sassとは?• Sassを使った場合の制作フロー• Sassるとは?• Sassられ指南その1: 入れ子• Sassられ指南その2: 変数・演算• Sassられ指南その3: @mixin• Sassられ指南その4: @import• まとめ

2011年6月6日月曜日

Page 63: Sassられ指南

Sassを使い始めて感じたこと• 環境依存がないので、どのようなタイミングからでも導入できる

• 仕様が小さいので習得が楽• ネストのやりすぎは逆に読みにくくなることがある• 使い回しが効きやすいので、CSSを設計しようという気になる

• ついでにminifyするようになった• Sass使わせてもらえないと発狂する体質になった

2011年6月6日月曜日

Page 64: Sassられ指南

ぜひ、Sassられましょう

2011年6月6日月曜日

Page 65: Sassられ指南

きっと、CSSを使い慣れている人の方がより良い使い方が思いつくはずです

2011年6月6日月曜日

Page 66: Sassられ指南

Sassを使い始めて感じたこと• 環境依存がないので、どのようなタイミングからでも導入できる

• 仕様が小さいので習得が楽• ネストのやりすぎは逆に読みにくくなることがある• 使い回しが効きやすいので、CSSを設計しようという気になる

• ついでにminifyするようになった• Sass使わせてもらえないと発狂する体質になった

2011年6月6日月曜日

Page 67: Sassられ指南

おすすめ記事• Webデザイナーの為の「本当は怖くない」”黒い画面”http://fjord.jp/love/548.html (Part1~Part9まであります)

• Sass徹底解説~SassがもたらすCSSのパラダイムシフトhttp://cssnite.jp/afterdark/cpi/vol01/

• Sass、そしてSassy SCC(SCSS)http://hail2u.net/documents/sass-and-sassy-css.html

2011年6月6日月曜日

Page 68: Sassられ指南

ご清聴ありがとうございました

2011年6月6日月曜日