回答:
IE7以降でサポートされている兄弟コンビネーターの使用について誰も言及しなかったことに驚いています。
tr + tr /* CSS2, adjacent sibling */
tr ~ tr /* CSS3, general sibling */
これらはどちらも(HTMLテーブルのコンテキストでは)まったく同じように機能します。
tr:not(:first-child)
elem + elem
たいのは、対象とする要素が唯一の子ではない場合の優れた一般的なソリューションです。たとえば、aの<h2>
後に複数の<p>
タグが続く場合、その場合、最初のタグ<p>
は最初の子ではありません。
あなたが話をしている「最初の行」のような音があなたのテーブルヘッダーです-あなたが本当に使用して考える必要がありますので、thead
とtbody
(自分のマークアップにはこちらをクリックし「より良い」マークアップにつながることになる)スクリーンリーダーのようなもののために(意味的に正しい便利)およびcss-selection(table thead ... { ... }
)のためのより簡単で、ブラウザーにやさしい可能性
質問にはすでに適切な回答がありますが、:first-child
タグが子供を表すアイテムタイプになっていることを強調したいだけです。
たとえば、コードでは:
<div id"someDiv">
<input id="someInput1" />
<input id="someInput2" />
<input id="someInput2" />
</div
最初の要素ではなく、2番目の2つの要素のみに影響を与えたい場合は、次のようにします。
#someDiv > input {
margin-top: 20px;
}
#someDiv > input:first-child{
margin-top: 0px;
}
つまり、input
sは子なのでfirst-child
、セレクターの入力部分に配置します。
申し訳ありませんが、これは古いことを知っていますが、なぜすべてのtr要素に最初のスタイル以外のすべてのスタイルを設定し、すべてのtr要素に対して指定した内容を取り消す疑似クラス:first-childを使用しないのですか?
この例でよりよく説明されています:
tr {
border-top: 1px solid;
}
tr:first-child {
border-top: none;
}
/ Patrik
別のオプション:
tr:nth-child(n + 2) {
/* properties */
}
以下は私が使用したものです
ol li:not(:first-child) {
background: black;
color: white;
}
次のように、CSSで疑似クラスセレクタを使用することもできます。
.desc:not(:first-child) {
display: none;
}
これは、クラスが.descの最初の要素に適用されません。
ここでは一例でJSFiddleです:http://jsfiddle.net/YYTFT/が、これは疑似クラスセレクタを説明するための良い情報源です。http://css-tricks.com/pseudo-class-selectors/
first-child
クラスを無視します。
クラスを作成し、CSSによって選択される(または望まない)将来のすべてを定義するときにクラスを使用できます。
これは書くことによって行われます
<tr class="unselected">
そしてあなたのCSSで行を持っています(そして例としてtext-alignコマンドを使用しています):
unselected {
text-align:center;
}
selected {
text-align:right;
}