Quantcast
Channel: CSSタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8916

知っておくべきCSSプロパティー

$
0
0
カスタムプロパティ (--*): CSS 変数 前はCSS変数なんてなくて変数をつけたい時はSCSS, SASSなどでつけるしかなかったですが、 今は --global--color-primary のように、頭に -- 接頭辞がつけられたプロパティはカスタムプロパティを表し、 var 関数を使用して他の宣言の中で使用することができる値を持ちます。 カスタムプロパティは宣言された要素のスコープになり、カスケードに関連します。そのようなカスタムプロパティの値は、カスケードのアルゴリズムによって決められた宣言から取られます。 SCSSの場合 $global--color-primary: #c6538c; a { color: #global--color-primary; } CSS変数を利用する場合 :root { --global--color-primary: #28303d; } a { color: var(--global--color-primary); } 例 See the Pen カスタムプロパティー by Lam Minh (@ramukun) on CodePen. 参考:https://developer.mozilla.org/ja/docs/Web/CSS/--* content-visibility content-visibilityはlazyloadのような動きですが、画像だけではなくて、HTML要素にも使えますのでページの読み込みが高速になります。 content-visibility: auto; visibleやhiddenのバリューがありますが、lazyloadみたいな動きはautoを設定します。 コンテンツがviewportに入る時に読み込みが始まって、表示されます。 heightがない場合、contain-intrinsic-sizeで想定のサイズが指定できます。 See the Pen content-visibility by Lam Minh (@ramukun) on CodePen. *サポートするブラウザーはChrome, Edge, Operaしかないですが、期待できますね。 Scroll Snap scroll-snap-type は画面をスクロールしてコンテンツがviewportに入るときにコンテンツが画面の上側や左側にsnapします。 イメージはパララックスみたいな動きです。 snap方向はいくつあります。 x : 横のスクロール y : 縦のスクロール both : x, yのスクロール mandatory : width、heightの半分ぐらい過ぎたらsnapされる proximity : コンテンツの 3分の1くらいスクロールしたらsnapされる See the Pen Scroll-snap-type "Mandatory" vs "Proximity" by Max Kohler (@maxakohler) on CodePen. 参考: https://css-tricks.com/practical-css-scroll-snapping/ :is & :where 最後は :is と :whereを話したいですね。 CSSは下記の書き方があります。 .main a:hover, .sidebar a:hover, .site-footer a:hover { /* markup goes here */ } :isを使えばリスト中のセレクターの何れか一つに当てはまる要素をすべて選択します。 :is(.main, .sidebar, .site-footer) a:hover { /* markup goes here */ } :whereも同様 :where(.main, .sidebar, .site-footer) a:hover { /* markup goes here */ } :isと:whereの違いは:isの方が優先度が高いそうです。 See the Pen :isと:whereの違い by Lam Minh (@ramukun) on CodePen. 終わりに 複雑コードやライブラリを使わなくてもCSSだけでパララックスが実装できそうですね。 CSSの進化を楽しみにしています。 ご覧いただきありがとうございました。

Viewing all articles
Browse latest Browse all 8916

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>