web-dev-qa-db-ja.com

jQueryの:eq()に似た標準のCSSセレクタはありますか?

CSSセレクターが下の行(jQueryコード)と同じことができるかどうかわかりません:

.tab_cadre_central .top:eq(0) table tbody tr td table tbody tr:eq(3)

私はCSSで次のようなことを試しました:

.tab_cadre_central .top::nth-child(0) table tbody tr td table tbody nth-child:eq(3) {
    display:none;
}

しかし、うまくいきませんでした。

20
user2077308

JQueryの:eq()は0ベースのインデックスを使用しますが、:nth-child()は1ベースのインデックスを使用するため、インデックスを適切にインクリメントする必要があります。

_.tab_cadre_central .top:nth-child(1) table tbody tr td table tbody tr:nth-child(4)
_

しかし、あなたは本当にそのセレクターのリファクタリングについて考える必要があります...


:eq():nth-child()は同様に振る舞うことができますが、確かに同じではないことに注意してください。 :eq()はセット内のn + 1番目の要素を選択し、:nth-child()はセット内のall要素を選択しますnそれぞれの親の子。 ⚠

_<div>
    <span></span>
    <span></span>
</div>
<div>
    <span></span>
</div>
_

セレクタdiv span:nth-child(1)は2つの要素をフェッチしますが、div span:eq(0)は1つだけを選択します。

41
Dennis