【KYB】New SR SPECIAL 《フロント用単品》 カリーナ AA63用 品番:NSC4040 ベーシック・ショックアブソーバの決定版新品OFF!

CSSセレクタで最後の要素が奇数だったときを指定する

Published


デザイナーさんから、2カラムの要素が3つあったとき、最後の3つめは1カラムにしたいという要望があり、思いついた実装方法です。あまり更新しないコンテンツでしたが、要素が増えたときにCSSを書き直しが発生するのが嫌で、この書き方にたどり着きました。

【KYB】New SR SPECIAL 《フロント用単品》 カリーナ AA63用 品番:NSC4040 ベーシック・ショックアブソーバの決定版【毎回大好評】

<ul>
 <li>111</li>
 <li>222</li>
 <li>333</li>
</ul>

CSS

ul {
 list-style: none;
 margin: 0;
 padding: 0;
}
li {
 float: left;
 width: 50%;
 padding: 20px;
 border: 1px solid #FFF;
 background: skyblue;
 box-sizing: border-box;
}
li:nth-child(2n+1):last-child {
 width: 100%;
 background: tomato;
}

デモ(Codepen)


See the Pen Selecting last-child of odd item by using CSS Selector by Kasumi Morita (@mkasumi) on CodePen.

要素が5つ、7つになっても適用されます 17インチアベンシス270系WORK エモーション T7R ホワイト 7.0Jx17Bluearth エース AE50 215/50R17。

1つめの要素を1カラムにしたいとき

ちなみに、last-childをfirst-childに変更すると、初めの要素に適用できます。

CSS

li:nth-child(2n+1):first-child {
 width: 100%;
 background: tomato;
}

デモ(Codepen)


See the Pen Selecting first-child of odd item by using CSS Selector by Kasumi Morita (@mkasumi) on CodePen.

インスピレーション元

普段だったら諦めているんですが、インスピレーション元があったので思いつきました。インスピレーション元は以下の記事です。

実装したときに驚いたのは、この記事が1年前の記事だったことです 14インチ サマータイヤ セット【適応車種:パッソ(M700系)】A-TECH シュナイダー SQ27 メタリックブラック 5.5Jx14トランパス mpZ 165/65R14。1年前の記事をぱっと思い出せるほど、この記事は私の印象に残っていたようです 【USエヌファブ 直輸入正規品】 n-Fab シボレー GMC 2500/3500 クルーキャブ 8フィートベッド 2007-2010年式 N-Duraステップ ベッドアクセス ツヤありブラック 【送料無料】 185/60R15 15インチ ENKEI エンケイ PFM1 5.5J 5.50-15 SAFFIRO サフィーロ SF5000(限定) サマータイヤ ホイール4本セット。

CMSで動的コンテンツを表示したときにたびたびレイアウトの不自由さを感じていたのですが、私が思っていたよりもCSSセレクタが助けてくれる場面がありそうです 。

{yahoojp}jpprem01-zenjp40-wl-zd-44623