• 検索結果がありません。

BASIC

N/A
N/A
Protected

Academic year: 2021

シェア "BASIC"

Copied!
248
0
0

読み込み中.... (全文を見る)

全文

(1)
(2)
(3)
(4)
(5)
(6)

なら

(7)

今日のお話

+

-× ÷

入力の

手間省く

CSSを

まとめる

計算

できる

(8)
(9)
(10)
(11)

CSS

Sass

変換

コンパイル

(12)

書き出し

(13)

書き出し

PSD

PSD

JPEG

JPEG

し、

する

(14)

書き出し

PSD

PSD

JPEG

JPEG

変換

し、

する

(15)

書き出し

PSD

PSD

JPEG

JPEG

変換

し、

出力

する

(16)

CSS

Sass

変換

コンパイル

(17)

CSS

Sass

変換

コンパイル

style.scss

style.css

Sass

CSS

し、

する

(18)

CSS

Sass

変換

コンパイル

style.scss

style.css

Sass

CSS

変換

し、

する

(19)

CSS

Sass

変換

コンパイル

style.scss

style.css

Sass

CSS

変換

し、

出力

する

(20)

1

入力の手間を

省略

(21)

Copy & Paste

(22)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(23)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(24)

共通セレクタを

1つ1つ書くのが大変

(25)

従来のCSS

#main

h1 {

margin: 10px;

}

#main

h2 {

margin: 10px;

}

#main

p {

margin: 10px;

}

#main

ul {

margin: 10px;

}

(26)

従来のCSS

#main

h1 {

margin: 10px;

}

#main

h2 {

margin: 10px;

}

#main

p {

margin: 10px;

}

#main

ul {

margin: 10px;

}

(27)

#main { h1 { margin: 10px; } h2 { margin: 10px; } p { margin: 10px; } ul { margin: 10px; } }

Sassにすると

Sass Meisterで見る

(28)

#main { h1 { margin: 10px; } h2 { margin: 10px; } p { margin: 10px; } ul { margin: 10px; } }

Sassにすると

Sass Meisterで見る

(29)

#main { h1 { margin: 10px; } h2 { margin: 10px; } p { margin: 10px; } ul { margin: 10px; } }

Sassにすると

#main h1 { margin: 10px; } #main h2 { margin: 10px; } #main p { margin: 10px; } #main ul { margin: 10px; }

Sass Meisterで見る

(30)

#main { h1 { margin: 10px; } h2 { margin: 10px; } p { margin: 10px; } ul { margin: 10px; } }

Sassにすると

#main h1 { margin: 10px; } #main h2 { margin: 10px; } #main p { margin: 10px; } #main ul { margin: 10px; }

Sass Meisterで見る

(31)

2重でも3重でもネスト(入れ子)OK

#main { h1 { margin: 10px; span { color: #000; } } h2 { padding: 10px; } }

Sass Meisterで見る

(32)

2重でも3重でもネスト(入れ子)OK

#main { h1 { margin: 10px; span { color: #000; } } h2 { padding: 10px; } }

Sass Meisterで見る

(33)

2重でも3重でもネスト(入れ子)OK

#main { h1 { margin: 10px; span { color: #000; } } h2 { padding: 10px; } } #main h1 { margin: 10px; } #main h1 span { color: #000; } #main h2 { padding:10px; }

Sass Meisterで見る

(34)

2重でも3重でもネスト(入れ子)OK

#main { h1 { margin: 10px; span { color: #000; } } h2 { padding: 10px; } } #main h1 { margin: 10px; } #main h1 span { color: #000; } #main h2 { padding:10px; }

Sass Meisterで見る

(35)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(36)

c

+

v

共通のセレクタ

同じ値

同じプロパティと値

(37)

同じ値を書くのが大変

(38)
(39)
(40)

#AD253A

#AD253A

#AD253A

(41)

#AD253A

#AD253A

#AD253A

#AD253A

全体を青に

できませんか?

(42)
(43)

$

(44)

$

(45)

変数の代入と参照

$

key_color

: #DF5496;

.box {

background:

$

key_color;

p

{

color:

$

key_color;

background: #FFF;

}

}

(46)

変数の代入と参照

$

key_color

: #DF5496;

.box {

background:

$

key_color;

p

{

color:

$

key_color;

background: #FFF;

}

}

(47)

変数の代入と参照

$

key_color: #DF5496;

.box {

background-color:

$

key_color;

p

{

color:

$

key_color;

background-color: #FFFFFF;

}

}

$

key_color

#DF5496

(48)

変数の代入と参照

$

key_color

: #DF5496;

.box {

background:

$

key_color

;

p

{

color:

$

key_color

;

background: #FFF;

}

}

(49)

変数の代入と参照

$

key_color

: #DF5496;

.box {

background:

$

key_color

;

p

{

color:

$

key_color

;

background: #FFF;

}

}

変数を代入

$

変数名

: 値;

(50)

変数の代入と参照

$

key_color

: #DF5496;

.box {

background:

$

key_color

;

p

{

color:

$

key_color

;

background: #FFF;

}

}

変数を代入

$

変数名

: 値;

(51)

変数の代入と参照

$

key_color

: #DF5496;

.box {

background:

$

key_color

;

p

{

color:

$

key_color

;

background: #FFF;

}

}

#DF5496

#DF5496

変数を代入

$

変数名

: 値;

(52)

変数の代入と参照

$key_color: #DF5496; .box { background: $key_color; p { color: $key_color; background: #FFF; } }

Sass Meisterで見る

(53)

変数の代入と参照

$key_color: #DF5496; .box { background: $key_color; p { color: $key_color; background: #FFF; } } .box { background: #DF5496; } .box p { color: #DF5496; background: #FFF; }

Sass Meisterで見る

(54)

$

(55)

もちろん、数値や文字列もOK

$ff_Impact: Impact, Arial;

$m_value: 10px; body { font-family: $ff_Impact; } input, textarea { font-family: $ff_Impact; } .box1 { margin: $m_value; }

Sass Meisterで見る

(56)

もちろん、数値や文字列もOK

$ff_Impact: Impact, Arial;

$m_value: 10px; body { font-family: $ff_Impact; } input, textarea { font-family: $ff_Impact; } .box1 { margin: $m_value; } body { font-family: Impact, Arial; } input, textarea { font-family: Impact, Arial; } .box1 { margin: 10px; }

Sass Meisterで見る

(57)

#AD253A

#AD253A

#AD253A

#AD253A

全体を青に

できませんか?

(58)

#AD253A

#AD253A

#AD253A

(59)

$color: ; body { background: $color; } #gNav { color: $color; } .ttl { color: $color; } #side { background: $color; } #AD253A

(60)

$color: ; body { background: $color; } #gNav { color: $color; } .ttl { color: $color; } #side { background: $color; } #AD253A body { background: ; } #gNav { color: ; } .ttl { color: ; } #side { background: ; } #AD253A #AD253A #AD253A #AD253A

(61)

$color: ; body { background: $color; } #gNav { color: $color; } .ttl { color: $color; } #side { background: $color; } #AD253A body { background: ; } #gNav { color: ; } .ttl { color: ; } #side { background: ; } #AD253A #AD253A #AD253A #AD253A #008ADE

(62)

$color: ; body { background: $color; } #gNav { color: $color; } .ttl { color: $color; } #side { background: $color; } #AD253A body { background: ; } #gNav { color: ; } .ttl { color: ; } #side { background: ; } #AD253A #AD253A #AD253A #AD253A #008ADE #008ADE #008ADE #008ADE #008ADE

(63)
(64)
(65)

変数の使いどころ

サイト全体で共通して使う色

メインカラー、サブカラー、アクセントカラー

通常のリンクカラー・ホバー時のリンクカラー

ページ幅

フォント名 bodyにfont-familyを指定しても、フォームには改めて指定する必要があるので変数にしておくと便利です。

プロパティの値が他のプロパティにも影響するとき 計算する際、同じ値を使うときに変数にしておくと1箇所を編集するとCSSを書き換えられるので便利です。セッショ ンでお話した960pxのボックスをpaddingやborderの値を引いて3分割する…といったときに使うと便利です。 発表時カット スライド

(66)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(67)

c

+

v

共通のセレクタ

同じ値

同じプロパティと値

(68)

同じプロパティと値を

書くのが大変

(69)

.boxA p {

margin: 20px;

padding: 10px;

color: #595959;

}

.boxA ul {

margin: 20px;

padding: 10px;

color: #595959;

line-height: 1.3;

}

(70)

.boxA p {

margin: 20px;

padding: 10px;

color: #595959;

}

.boxA ul {

margin: 20px;

padding: 10px;

color: #595959;

line-height: 1.3;

}

(71)

.boxA p {

margin: 20px;

padding: 10px;

color: #595959;

}

.boxA ul {

margin: 20px;

padding: 10px;

color: #595959;

line-height: 1.3;

}

プロパティ: 値;

今度はこのセットをまとめたい

(72)
(73)

$

@mixin

(74)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

(75)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

(76)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

(77)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

basic

margin: 20px;

padding: 10px;

color: #595959;

(78)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

Sass Meisterで見る

(79)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

@mixin

名前

{〜}

定義するとき

Sass Meisterで見る

(80)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

@mixin

名前

{〜}

定義するとき

Sass Meisterで見る

(81)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

@mixin

名前

{〜}

@include

名前

;

定義するとき

呼び出すとき

Sass Meisterで見る

(82)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

(83)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } }

(84)

Sassで書くとこうなる

@mixin basic { margin: 20px; padding: 10px; color: #595959; } .boxA { p { @include basic; } ul { @include basic; line-height: 1.3; } } .boxA p { margin: 20px; padding: 10px; color: #595959; } .boxA ul { margin: 20px; padding: 10px; color: #595959; line-height: 1.3; }

(85)

.boxA

.boxB

今度は一部だけ違うとき

(86)

.boxA

.boxB

10px

20px

20px

10px

今度は一部だけ違うとき

(87)

.boxA

.boxB

10px

20px

20px

10px

今度は一部だけ違うとき

paddingだけ違う

(88)

今度は一部だけ違うとき

.boxA {

margin: 20px;

padding: 10px;

color: #595959;

}

.boxB {

margin: 20px;

padding: 20px;

color: #595959;

}

(89)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

(90)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

@mixin

名前

($変数名)

{}

定義するとき

(91)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

@mixin

名前

($変数名)

{}

定義するとき

(92)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

@mixin

名前

($変数名)

{}

定義するとき

@include

名前

(値や変数)

;

呼び出すとき

(93)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

@mixin

名前

($変数名)

{}

定義するとき

@include

名前

(値や変数)

;

呼び出すとき

(94)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

10px

@mixin

名前

($変数名)

{}

定義するとき

@include

名前

(値や変数)

;

呼び出すとき

(95)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

@mixin

名前

($変数名)

{}

定義するとき

@include

名前

(値や変数)

;

呼び出すとき

10px

(96)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

@mixin

名前

($変数名)

{}

定義するとき

@include

名前

(値や変数)

;

呼び出すとき

(97)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

20px

@mixin

名前

($変数名)

{}

定義するとき

@include

名前

(値や変数)

;

呼び出すとき

20px

(98)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); }

Sass Meisterで見る

(99)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); } .boxA { margin: 20px; padding: 10px; color: #595959; } .boxB { margin: 20px; padding: 20px; color: #595959; }

Sass Meisterで見る

(100)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); } .boxA { margin: 20px; padding: 10px; color: #595959; } .boxB { margin: 20px; padding: 20px; color: #595959; }

Sass Meisterで見る

(101)

Sassで書くとこうなる

@mixin basic($value) { margin: 20px; padding: $value; color: #595959; } .boxA { @include basic(10px); } .boxB { @include basic(20px); } .boxA { margin: 20px; padding: 10px; color: #595959; } .boxB { margin: 20px; padding: 20px; color: #595959; }

Sass Meisterで見る

(102)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(103)

c

+

v

共通のセレクタ

同じ値

同じプロパティと値

(104)

「,」でまとめると、

コードが把握しにくい

(105)

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

.noteA

.noteB

CSSでこういうコード書いたことありませんか?

(106)

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

.noteA

.noteB

CSSでこういうコード書いたことありませんか?

違いは線幅だけ

(107)

CSSでこういうコード書いたことありませんか?

.noteA,

.noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

.noteB

{

border-width: 4px;

}

(108)

.noteA

.noteB

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

CSSでこういうコード書いたことありませんか?

(109)

.noteA

.noteB

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

CSSでこういうコード書いたことありませんか?

(110)

.noteA

.noteB

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

CSSでこういうコード書いたことありませんか?

強調スタイルも

必要でした…。

(111)

CSSでこういうコード書いたことありませんか?

.noteA,

.noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

.noteB

{

border-width: 4px;

}

(112)

CSSでこういうコード書いたことありませんか?

.noteA,

.noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

.noteB

{

border-width: 4px;

}

.noteA

strong,

.noteB

strong {

color: #DF5496;

(113)

CSSでこういうコード書いたことありませんか?

.noteA,

.noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

見通しが悪い

ミスの原因

=

.noteB

{

border-width: 4px;

}

.noteA

strong,

.noteB

strong {

color: #DF5496;

(114)
(115)

@extend

(116)

Sassではこう書けます

.noteA {

margin: 20px;

padding: 10px;

border: 1px solid #000;

strong {

color: #DF5496;

}

}

.noteB {

@extend

.noteA

;

border-width: 4px;

}

(117)

Sassではこう書けます

.noteA {

margin: 20px;

padding: 10px;

border: 1px solid #000;

strong {

color: #DF5496;

}

}

.noteB {

@extend

.noteA

;

border-width: 4px;

}

(118)

Sassではこう書けます

.noteA {

margin: 20px;

padding: 10px;

border: 1px solid #000;

strong {

color: #DF5496;

}

}

.noteB {

@extend

.noteA

;

border-width: 4px;

}

@extend

セレクタ名

;

セレクタを「,」でつなげる

(119)

Sassではこう書けます

.noteA { margin: 20px; padding: 10px; border: 1px solid #000; strong { color: #DF5496; } } .noteB { @extend .noteA; border-width: 4px; }

Sass Meisterで見る

(120)

Sassではこう書けます

.noteA { margin: 20px; padding: 10px; border: 1px solid #000; strong { color: #DF5496; } } .noteB { @extend .noteA; border-width: 4px; } .noteA, .noteB { margin: 20px; padding: 10px; border: 1px solid #000; } .noteA strong, .noteB strong { color: #DF5496; } .noteB { background-width: 4px; }

Sass Meisterで見る

(121)

Sassではこう書けます

.noteA { margin: 20px; padding: 10px; border: 1px solid #000; strong { color: #DF5496; } } .noteB { @extend .noteA; border-width: 4px; } .noteA, .noteB { margin: 20px; padding: 10px; border: 1px solid #000; } .noteA strong, .noteB strong { color: #DF5496; } .noteB { background-width: 4px; }

Sass Meisterで見る

(122)

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

.noteA

.noteB

CSSでこういうコード書いたことありませんか?

(123)

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

.noteA

.noteB

.noteBが不要になりました!

(124)

CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。 CSSで同じスタイルを何度も書くようなこと がありませんか?CSSで幅の計算ができた ら?普段CSSを書く上で不便に感じているこ とはSassを使うことで解決できます。 本セッションでは、Sassをこれから使ってみ るという人のために、Sassの構文がコンパイ ル(変換)でCSSがどのように変わるのか、 基本的な書き方を紹介します。

.noteA

.noteB

.noteBが不要になりました!

(125)

.noteA, .noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

.noteA strong, .noteB strong

{

color:

#DF5496

;

}

.noteB

{

border-width: 4px;

}

.noteBが不要になりました!

(126)

.noteA, .noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

.noteA strong, .noteB strong

{

color:

#DF5496

;

}

.noteB

{

border-width: 4px;

}

.noteBが不要になりました!

(127)

.noteA, .noteB

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

}

.noteA strong, .noteB strong

{

color:

#DF5496

;

}

.noteB

{

border-width: 4px;

}

3

箇所

.noteBが不要になりました!

(128)

.noteA

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

strong {

color: #CD6699;

}

}

.noteB

{

@extend

.noteA

;

border-width: 4px;

}

Sassで書くと

(129)

.noteA

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

strong {

color: #CD6699;

}

}

.noteB

{

@extend

.noteA

;

border-width: 4px;

}

Sassで書くと

1

箇所

(130)

.noteA

{

margin: 20px;

padding: 10px;

border: 1px solid #000;

strong {

color: #CD6699;

}

}

.noteB

{

@extend

.noteA

;

border-width: 4px;

}

Sassで書くと

削除範囲が近い

消し忘れが

起こりにくい

=

(131)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(132)

1

入力の手間を

省略

(133)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(134)

{

{

}

}

ネスト(入れ子)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(135)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

(136)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

@mixinで定義

@includeで呼び出し

@mixin

(137)

共通のセレクタ

同じ値

同じプロパティと値

セレクタのグループ

@extendで

「,」でつなげる

@extend

(138)

2

CSSを

(139)
(140)

HTML

(141)

import.css

CSS

(142)

import.css

CSS

HTML

@import url("reset.css");

@import url("layout.css");

@import url("basic.css");

(143)

CSS

CSS

CSS

import.css

CSS

reset.css

layout.css

basic.css

HTML

(144)

import.css

CSS

HTML

CSS

CSS

CSS

reset.css

layout.css

basic.css

4

4回、サーバーからCSSをダウンロードしてくる必要があった

requests

(145)
(146)

import.css

CSS

HTML

CSS

CSS

CSS

reset.css

layout.css

basic.css

4回、サーバーからCSSをダウンロードしてくる必要があった

4

requests

(147)

import.css

CSS

HTML

CSS

CSS

CSS

reset.css

layout.css

basic.css

CSSを一つにまとめると高速化に結びつけやすい

1

request

(148)

import.css

CSS

HTML

@import url("reset.css");

@import url("layout.css");

@import url("basic.css");

CSS

CSS

CSS

reset.css

layout.css

basic.css

(149)

import.css

CSS

HTML

/* reset.cssの内容 */

html { …

/* layout.cssの内容 */

#main { …

/* basic.cssの内容 */

body { …

(150)

2

CSSを

(151)

CSS

CSS

CSS

CSS

import.css

(152)

Sass

import.scss

Sass

Sass

Sass

(153)

Sass

import.scss

Sass

Sass

Sass

_reset.scss _layout.scss _basic.scss

ファイル名先頭に

_ (アンダースコア)

(154)

Sass

import.scss

@import url("reset.css");

@import url("layout.css");

@import url("basic.css");

(155)

Sass

import.scss

@import

"reset"

;

@import

"layout"

;

@import

"basic"

;

アンダースコアと

拡張子.scssを取る

(156)

Sass

import.scss

(157)

Sass

import.scss

@import

"reset","layout","basic"

;

(158)

Sass

import.scss

Sass

Sass

Sass

(159)

import.css

CSS

Sass

import.scss

合体!

Sass

Sass

Sass

(160)

import.css

CSS

Sass

import.scss

合体!

Sass

Sass

Sass

_reset.scss _layout.scss _basic.scss

/* reset.cssの内容 */

html { …

/* layout.cssの内容 */

#main { …

/* basic.cssの内容 */

body { …

(161)

3

計算できる

+

-× ÷

(162)

余白計算は電卓...

(163)

960px

(164)

960px

px

px

px

(165)
(166)

(960 - 15 * 2) / 3

(167)
(168)

Sassで書くと

.wrap {

width: 960px;

border: 15px solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

Sass Meisterで見る

(169)

Sassで書くと

.wrap {

width: 960px;

border: 15px solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

Sass Meisterで見る

(170)

変換するとこうなる

.wrap {

width: 960px;

border: 15px solid black;

}

.wrap > div {

float: left;

width: 310px;

}

(171)

足し算

引き算

かけ算

割り算

+

-*

/

(172)

Sassで書くと

.wrap {

width: 960px;

border: 15px

solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

半角スペース入れる

(173)

960px

(174)

960px

px

px

px

(175)

Sassで書くと

.wrap {

width: 960px;

border: 15px solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

(176)

Sassで書くと

.wrap {

width: 960px;

border: 15px solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

(177)

Sassで書くと

.wrap {

width: 960px;

border: 15px solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

(178)

Sassで書くと

.wrap {

width: 960px;

border: 15px solid #000;

> div {

float: left;

width: (960px - 15 * 2) / 3;

}

}

根拠が同じ値

(179)

変数を使うと

.wrap {

$bd_width

: 15px;

width: 960px;

border:

$bd_width

solid #000;

> div {

float: left;

width: (960px -

$bd_width

* 2) / 3;

}

}

Sass Meisterで見る

(180)

CSSに変換すると

.wrap {

width: 960px;

border: 15px solid black;

}

.wrap > div {

float: left;

width: 310px;

}

(181)

CSSに変換すると

.wrap {

width: 960px;

border: 15px solid black;

}

.wrap > div {

float: left;

width: 310px;

}

(182)

CSSに変換すると

.wrap {

width: 960px;

border: 15px solid black;

}

.wrap > div {

float: left;

width: 310px;

}

(183)

色の微調整ができない

(184)
(185)
(186)

お申し込み

(187)

Sassで書くとこうなる

button {

background: #669999;

&:hover {

background:

#669999

;

}

}

darken(

,20%)

Sass Meisterで見る

(188)

Sassで書くとこうなる

button {

background: #669999;

&:hover {

background:

#669999

;

}

}

暗くする

darken(

,20%)

Sass Meisterで見る

(189)

Sassで書くとこうなる

button {

background: #669999;

&:hover {

background:

#669999

;

}

}

暗くする

darken(

,20%)

どれぐらい?

Sass Meisterで見る

(190)

Sassで書くとこうなる

button {

background: #669999;

&:hover {

background:

#669999

;

}

}

暗くする

darken(

,20%)

どれぐらい?

親セレクタ

button

Sass Meisterで見る

(191)

Sassで書くとこうなる

button {

background: #669999;

&:hover {

background:

#669999

;

}

}

darken(

,20%)

button {

background: #669999;

}

button:hover {

background: #527a7a;

}

Sass Meisterで見る

(192)
(193)
(194)

お申し込み

(195)

お申し込み

(196)

お申し込み

(197)

daken

lighten

saturate

desaturate

adjust-hue

色を暗くする

darken(色,度数%)

色を明るくする

lighten(色,度数%)

彩度を上げる

saturate(色,度数%)

彩度を下げる

desaturate(色,度数%)

色相をずらす

adjust-hue(色,度数deg)

(198)

変数を使うともっと便利!

$key_color: #669999; h1 {

background-color: darken($key_color,10%); }

h2 {

border-left: 5px solid darken($key_color,5%); }

h3 {

border-bottom: 1px solid

saturate(darken($key_color,20%),10%); }

(199)

CSSに変換すると

h1 {

background-color: #527a7a; }

h2 {

border-left: 5px solid #5c8a8a; } h3 { border-bottom: 1px solid #366363; }

h1

テキスト

h2

テキスト

h3

テキスト

参照

関連したドキュメント

が前スライドの (i)-(iii) を満たすとする.このとき,以下の3つの公理を 満たす整数を に対する degree ( 次数 ) といい, と書く..

Robertson-Seymour の結果により,左図のように disjoint

変形を 2000 個準備する

・虹彩色素沈着(メラニンの増加により黒目(虹彩)の色が濃くなる)があらわれ

彩度(P.100) 色の鮮やかさを 0 から 14 程度までの数値で表したもの。色味の

光を完全に吸収する理論上の黒が 明度0,光を完全に反射する理論上の 白を 10

第 4 四半期は、2015 年度第 2 回コンペを開催する予定。応募件数が伸び悩んで いるため、2015 年度第