使用第一个孩子选择具有特定类的表行

罗里克

我发现了一个奇怪的错误,即CSS:first-child选择器似乎无法为我选择表格行。

我有下表

<table>
    <tr class="a">
        <td>a</td>
    </tr>
    <tr class="b">
        <td>b</td>
    </tr>
    <tr class="b">
        <td>b</td>
    </tr>
    <tr class="c">
        <td>c</td>
    </tr>
    <tr class="c">
        <td>c</td>
    </tr>
</table>

我想在tr.b的第一个实例之前添加一行。

此代码将不起作用:

$("table tr.b:first-child").before("<tr><td>using css selector</td></tr>");

但这可以正常工作:

$("table tr.b").first().before("<tr><td>using jquery first()</td></tr>");

这是一个已知问题,还是我做错了什么?我不介意使用jQuery,但我不明白为什么这不能与纯CSS一起使用。

这是一个小玩意儿:

http://jsfiddle.net/5d6YX/

米林德·安纳特瓦尔(Milind Anantwar)

这就是假定的工作方式。:first伪类等效于:eq(0)也可以写成:lt(1)尽管此元素仅匹配一个元素,但:first-child可以匹配多个元素:每个父元素一个。

试试这个:

$("table tr.b:first").before("<tr><td>css selector</td></tr>");

或者

$("table tr.b:eq(0)").before("<tr><td>css selector</td></tr>");

工作演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

当每个使用相同类的后续元素也是第一个孩子时,如何使用特定类选择页面上的第一个元素?

如何选择特定的第一个孩子

在 CSS 中选择具有特定类的序列的第一个和最后一个元素

如何使用XPath选择具有特定属性的第一个元素

如何从CSS中所有相似的类中选择第一个孩子

第一个孩子没有选择其类型的第一个

第一个孩子的选择

通过JS检测div的第一个和最后一个孩子是否具有类更改

如何使用linq选择一个孩子的第一个孩子?

使用jquery定位类的所有实例的第一个孩子

如何在jQuery中具有相同的类时选择子菜单中的第一个孩子而不是孙子

选择具有第一个条件的第三个表 [SQL]

如何在第一个孩子中选择第一个孩子

CSS3选择器:具有类名的第一个类型?

选择具有特定元素的最后一个孩子

如何单击第一个按钮,该按钮位于具有span类的特定div中?(使用javascript)

选择元素后具有特定类别的第一个兄弟姐妹

CSS:有班级的孩子的第一个孩子

从具有特定类的第一个输入中获取父表单元素

jQuery查找具有特定类前缀的第一个父元素

如果有任何重复,则选择具有特定属性的第一个元素,否则选择第一个元素

获取具有类名的行的第一个单元格值的逗号分隔列表(使用Jquery)?

使用jQuery查看div是否有一个具有特定类的孩子

每次行的第一个单元格具有特定值时创建一个新工作表 - Excel

仅当具有两个类并且共享相同的第一个类时才选择元素

如何选择第一个孩子到特定班级?

使用纯CSS隐藏除元素的第一个孩子之外的所有孩子

选择嵌套div中的第一个孩子

选择第一个孩子的元素