我想从所有td
中选择第n个td
,我该怎么做?
我知道我可以用document.querySelectorAll("td")[nth]
来做,但我正在寻找一种纯粹的CSS方式。
我尝试document.querySelectorAll("td:nth-child(77)")
,但它没有像document.querySelectorAll("td")[77]
那样给出结果。
答案 0 :(得分:15)
var result = document.querySelectorAll("table td:nth-of-type(2)");
console.log(result);
<table>
<tr><td>nope</td><td>nope</td></tr>
<tr><td>nope</td><td>here</td></tr>
</table>
UP。代码段显示您无法全局选择TD元素,但您可以在给定的TR中获得第n个td元素。这是你在找什么?
有选择器:nth-of-type(77)
应该帮助你。
nth-child
选择器计算给定元素的所有子元素 - 包括其他类型的标记。当JS querySelector
结果array
从0
答案 1 :(得分:9)
我知道我可以用
document.querySelectorAll("td")[nth]
来做,但我正在寻找一种纯粹的CSS方式。
没有纯粹的CSS等价物。见Matching the first/nth element of a certain type in the entire document
答案 2 :(得分:1)
有一种名为==&gt;的纯css方式:第n-的型
例如,要选择第77个td元素,语法为==&gt; TD:第n的式(77)
有关:nth-of-type选择器的更多信息,请参阅Morzilla开发人员网络
//对于自己看到的元素//
https://developer.mozilla.org/nl/docs/Web/CSS/:nth-of-type
//有关您可以使用的所有选择的语法:nth-child和:nth-of-type,请参阅// https://developer.mozilla.org/en-US/docs/Web/CSS/:nth-child