ti-enxame.com

Existe um seletor CSS padrão semelhante a: eq () no jQuery?

Não sei se existe um seletor CSS que pode fazer o mesmo que a linha abaixo (código jQuery):

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

Eu tentei em CSS algo como isto:

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

mas não funcionou.

20
user2077308

Enquanto :eq() do jQuery usa indexação baseada em 0, :nth-child() usa indexação baseada em 1, então você precisa incrementar seus índices adequadamente:

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

Mas você deve realmente pensar em refatorar esse seletor ...


⚠ Vale a pena notar que, embora :eq() e :nth-child() possam se comportar de maneira semelhante - eles certamente não são os mesmos. :eq() selecionará o elemento n + 1 o conjunto no conjunto enquanto :nth-child() selecionará todos elementos no conjunto que são os n o filho de seus respectivos pais. ⚠

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

O seletor div span:nth-child(1) buscará dois elementos, enquanto div span:eq(0) selecionará apenas um.

41
Dennis