【30分でマスター】sassのエクステンドの使い方

sassエクステンドの使い方
ティロ

こんにちは、ティロといいます

sassのエクステンドの使い方を紹介します

 

まだsassを書いたことがないという方はこちらの記事をどうぞ。所要時間:約30分、ネスト、コメント、変数の扱い方を紹介しています。

関連記事

所要時間:30分 ティロこんにちは、ティロといいますsassの超基本的な書き方を紹介します。環境構築がまだの人はこちらの記事をお読みください。15分程度で環境構築ができます。&n[…]

sassの超基本の書き方

 

ペンギンさん
まだ環境構築できてないよ
という方はこちらの記事をどうぞ。所要時間:約15分
関連記事

所要時間約15分プログラミング初心者で黒い画面の使い方が分からない、ネットで調べてもうまくできない・・・そんな方向けの記事となります。この方法なら15分足らずで環境構築ができます! ティロこんに[…]

sassの環境構築を黒い画面なしで行う

エクステンド

エクステンドとは

エクステンドとは指定したセレクタのスタイルを継承することができる機能です。例えば下の例では.sidebar–articleでエクステンドしています。

書き方は

@extend .セレクタ名
です。
これをcssに変換すると以下のようになります。
.sidebar–articleがちゃんと継承されています。

セレクタ内では複数のエクステンドが可能です。下の例では.sidebar–articleが.articleと.main__textをエクステンドしていることが分かります。

cssでは.main__textと.sidebar–articleに指定したプロパティがあります。

エクステンドを階層的に使う

またエクステンドを階層的に使うことが可能です。階層的とは継承したセレクタをさらに別のセレクタが継承することです。下のコードを見ると.dayで.main__textをエクステンドしています。そして.sidebar–article__dayで.dayをエクステンドしています。

このように一部のプロパティを継承して、さらにそれを別のセレクタに継承することができます。

cssに変換すると期待通りになっていますね。

 

エクステンドが使えないもの

エクステンドが使えない例は以下の通りです。

これ以外はエクステンドできます。

 

プレースホルダーセレクタ

プレースホルダーセレクタとは変数のように、プロパティをいくつか格納して使うことです。

書き方は

%プレースホルダーセレクタ名

です。%のあとにプレースホルダーセレクタの名まえを書いてください。

例を見てください。

%main-fontがプレースホルダーセレクタです。cssに変換後、%main-fontがありません。このようにエクステンド用として使いたい場合に便利です。

最後に

ティロ
エクステンドを使うとよりコードが読みやすく、メンテナンスもしやすいと思います。
ペンギンさん
エクステンドって便利だね~
ペンギンさん
sassって難しいイメージがあったけど、案外簡単だね!

今回、「web製作者のためのSassの教科書 webデザインの現場で必須のCSSプリプロセッサ 改訂2版」という本を参考にしました。

ソースコードの例が豊富でかつわかりやすいのでコードを見るだけで使い方が分かりました。sassを勉強した方はこの本がおススメです。

アマゾンのリンクを貼っておきます。