使用css选择器选择不带表格标题的表格行

使用css选择器选择不带表格标题的表格行,css,css-selectors,click,css-tables,Css,Css Selectors,Click,Css Tables,使用css选择器我应该如何编写一个选择器,以便只有具有数据的表行才能将光标显示为指针。我试过了,但没有 table tbody tr:not(tr>th) 这是IE6中的跨浏览器和works事件吗?不是有效的CSS选择器;不能将组合符放入:not() 最好将标题行(即包含元素的元素)放在中,将其余行保留在表的中,只需使用以下命令: table tbody tr { cursor: pointer; } 如果您不能修改HTML,那么仅使用CSS选择器是不可能的,尤其是在您需要支持

使用css选择器我应该如何编写一个选择器,以便只有具有数据的表行才能将光标显示为指针。我试过了,但没有

table tbody tr:not(tr>th)

这是IE6中的跨浏览器和works事件吗?

不是有效的CSS选择器;不能将组合符放入
:not()

最好将标题行(即包含
元素的
元素)放在
中,将其余行保留在表的
中,只需使用以下命令:

table tbody tr {
    cursor: pointer;
}
如果您不能修改HTML,那么仅使用CSS选择器是不可能的,尤其是在您需要支持IE6的情况下。改用JavaScript;下面是一个强制jQuery示例:

$('table tbody tr:not(:has(th))').css('cursor', 'pointer');
假设标题行总是第一行,您可以这样做:

table tr:not(:first-child) {
    background:red;
}​
这将选择所有
tr
元素,除了
第一个子元素(如匹配元素中的第一个)

这在IE6或除IE9之外的任何其他版本的IE中都不起作用

但是,如果您确实需要IE6支持,则必须使用Javascript。

您可以使用标签

在我的例子中,表如下所示:

<table>
  <thead> <tr><th>... </thead>
  <tbody> <tr><td>... </tbody>
</table>
这仅适用于具有标题的表:

thead+tbody tr{
      background: red;
}

基本上,我尝试了上面的解决方案,但在我的情况下,我写了一些不同的东西,使其工作。我不知道是使用
:hover
还是不使用光标更好

table tbody>tr:hover {
   cursor: pointer;
}
在我的例子中,表是这样编码的

<table>
  <thead>
    <tr>...</tr>
     ....
  </thead>
  <tbody>
   <tr>...</tr>
    ...
</table>

...
....
...
...

总之,我想给整行添加样式,而不是
tr
本身

@BoltClock,因为我们正在使用Gridview(asp.net控件)的样式,我们几乎没有选择;(他们不会在
thead
@Deeptechtons中呈现
th
:那么我担心你用CSS选择器不会有任何进展,尤其是IE6支持。请参阅我的编辑。你可以使用
表tr+tr
来满足IE7和IE8的需求,但IE6是遥不可及的。
<table>
  <thead>
    <tr>...</tr>
     ....
  </thead>
  <tbody>
   <tr>...</tr>
    ...
</table>