有没有办法只从元素中获取第一级元素,如果它只有一个标记?我有下面的html,只想从找到的“tr”的第一级得到所有“tr”标签。不是“tr”标签内的那些。
<tbody>
<tr> // I want this
<td>
<td>
<div>
<table>
<colgroup span="9">
<tbody>
<tr> // Don't want this
<td>
<tr> // I want this
<td>
<td>
<div>
<table>
等
答案 0 :(得分:1)
是的,但首先您需要在所有行上设置所需的样式,然后将嵌套表的行重置为其默认样式。
.table, td { border:1px solid black; }
/* First set the style you want, but set it on all rows. */
tr { background-color:yellow; }
/* Then reset the nested table's rows back to their default style. */
table table tr { background-color:white; }
<table>
<tbody>
<tr>
<td>test</td>
<td>test</td>
<td>
<table>
<tr>
<td>test</td>
</tr>
<tr>
<td>test</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>test</td>
<td>test</td>
<td>test</td>
</tr>
<table>
答案 1 :(得分:-1)
我建议你使用类来选择元素。
编辑:
还有另一篇帖子有同样的问题。(Apply style to only first level of td tags)
使用
.MyClass>tbody>tr>td { border: solid 1px red; }
答案 2 :(得分:-1)
如果你使用jQuery,你可以使用类似的东西来定位它:
$("tbody > tr").html()
这将选择紧跟tr
tbody
要获得下一个,你会想要寻找它的兄弟姐妹。