私はCSSで次のようなものを書きました:
tr.red > td:not(:last-of-type):not(:first-of-type)
{
color: #E53B2C;
border-bottom: 4px solid #E53B2C;
}
.red
これを、クラスのある行の最初でも最後でもない表のセルに適用しようとしています。
期待通りに動作するように見えますが、これは本当に正しい方法ですか?
私はCSSで次のようなものを書きました:
tr.red > td:not(:last-of-type):not(:first-of-type)
{
color: #E53B2C;
border-bottom: 4px solid #E53B2C;
}
.red
これを、クラスのある行の最初でも最後でもない表のセルに適用しようとしています。
期待通りに動作するように見えますが、これは本当に正しい方法ですか?
W3C CSS Validatorを使用してすぐに確認できるため、構文的に正しいです。バリデーターにはエラーがあることが知られているため、原則として、CSS 仕様、特にセレクター レベル 3に対してルールを確認する必要があります。結果は、はい、正しいです。
これはセレクターが結合する方法であるため、望ましい意味もあります。セレクターを使用:not(...)
して、「not ... and not ...」タイプの条件を表現できます。
tr
これは、要素のすべての子が である場合に適用されますtd
。ヘッダー セル、つまりth
要素もある場合、セレクターはクラスtd
の行の最初のデータ セルでも最後のデータ セルでもないデータ セル (要素) に適用されます。.red