2011-11-28 6 views
30

class attrを持たない最後の子を選択することはできますか? 例えばように:CSS内のlast-childと:not(.class)セレクタ

<tr> ... </tr> 
<tr> ... </tr> 
<tr> ... </tr> 
<tr class="table_vert_controls"> ... </tr> 

Iは、この場合には、第三の行を選択します。

私は動作しませんでした、次のことを試してみました:事前に

tr:not(.table_vert_controls):last-child 

感謝を。

だけでCSSセレクタと
+3

これはあなたが期待していると思います。 ** BoltClock **の回答** [セレクタでCSS3:nth-​​child(odd)](** http://stackoverflow.com/a/5546296/500725)** –

+0

ヒントSivaをありがとう!それはまさに私が必要としていたものではありませんでしたが、私はn番目の最後の子供を使用して終了しました。クラスの行は常に最後に来るので、必要な行を選択するためにnth-last-childを使用しました。 – dcastro

+0

@dcastro: 'tr:nth-​​last-child(2)'のように?それも動作します:) – BoltClock

答えて

25

ない、いや、:last-childとして、具体的で最後の子を見て、同様の:last-of-class疑似クラスはありません。 this related questionへの私の答えを見てください。後半に2015のよう

、実装はあなたが引数(リンクの答えへの更新でも、その上より)として、任意のセレクタを渡すことができ:nth-child():nth-last-child()にセレクタ4の拡張のためにある散水ゆっくり始めています。その後、次のように記述することができるようになります:

tr:nth-last-child(1 of :not(.table_vert_controls)) 

実装が最近出荷し始めているものの、それはまだ広くサポートするために、このためにもう一年以上、少なくとも数ヶ月取る場合はありません。その間に、問題のクラスの直前に追加のクラスやjQueryセレクターなどの何かを使用する必要があります。

$('tr:not(.table_vert_controls):last') 
+0

':last-of-type'は十分に近いと思いますが、これはうまくいかないでしょうか? – Tomalak

+5

@Tomalak:いいえ、 ':last-of-type'は機能的な表記法を持たず、要素タイプ(この場合は' tr')だけを見ます。 – BoltClock

+0

ありがとうございます。私はすでにそれを削除しました。 (あなたはjQueryコードが私の答えの最初のバージョンでした、これは最初のところjQueryではないことに気が付いた...) – Tomalak