こんにちは。事業戦略室の竹内です。
前回の名残でCSS3ネタを...。
CSS2.1と比べて、CSS3には
多数のセレクタが追加されています。
中でも感動したのは
疑似クラスセレクタの充実ぶりです。
個人的に便利だなと思ったセレクタを
一部ご紹介します。
━━━━━━━━━━━━━━━━
/* E...要素、(n)...n番目 */
E:nth-child(n)
━━━━━━━━━━━━━━━━
E要素の親の中のn番目のE要素を指定します。
それ以外にも下記のような指定も可能。
━━━━━━━━━━━━━━━━
/* 整数の場合は、そのままn番目 */
E:nth-child(1)
----------------------------------------------------
/* nには0から順に整数が入り計算されるので、奇数番目指定 */
E:nth-child(2n+1)
----------------------------------------------------
/* 奇数番目指定、(2n+1)と同じ結果 */
E:nth-child(odd)
----------------------------------------------------
/* nには0から順に整数が入り計算されるので、偶数番目指定 */
E:nth-child(2n)
----------------------------------------------------
/* 奇数番目指定、(2n)と同じ結果 */
E:nth-child(even)
━━━━━━━━━━━━━━━━
なんて便利なんでしょう!
今回ご紹介した新セレクタが使用すれば
idやclassをぐっと減らすことができ、
ソースコードを簡素化できそうです。
こんにちは。
事業戦略室の竹内です。
最近のサイト制作のトレンドの一つに
Progressive Enhancement(プログレッシブ・エンハンスメント)と
いう考え方があります。
これはどのブラウザでも情報が欠けることなく参照できるが、
最新のブラウザであればよりリッチに見ることが出来、
古いブラウザではデザイン的に劣っても情報が欠けることなく
参照できるようにする、というもの。
CSS3をサポートしているFirefoxでは枠が角丸で表示されるが、
CSS3をサポートしていないIEでは枠が直角で表示されるなど、
要するに情報の閲覧に支障がなければブラウザごとに表示が
違っても良いじゃないかという考え方です。
(CSS3を利用したデザインをメインにしてしまうと
この考えを利用できませんが...)
IEがCSS3に対応するまでにまだまだ時間がかかりそうですが、
CSS3を利用しているサイトがどんどん増加している昨今。
数年後を見据えて今からCSS3に慣れておこうかと思います。
Let's Progressive Enhancement!!
竹内