Есть ли стандартный селектор CSS, подобный: eq() в jQuery?

Я не знаю, есть ли селектор 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;
}

но это не сработало.

Ответы

Ответ 1

В то время как 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() выберет все элементы в наборе, которые являются n-м дочерним из их соответствующих родителей. ⚠

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

Селектор div span:nth-child(1) будет извлекать два элемента, а div span:eq(0) будет выбирать только один.