【发布时间】:2017-01-15 11:59:14
【问题描述】:
我的直系后代选择器有问题。看一个简单的例子:
.myDiv > table tr:first-child td {
font-weight: bold;
text-align: center;
}
<div class="myDiv">
<table style="width:100%">
<tr>
<td style="width:37%">Revenue & Cost</td>
<td style="width:43%">Name</td>
<td style="width:20%">Income</td>
</tr>
<tr>
<td>column 1</td>
<td colspan="2">
<table id="tableChild" width="100%">
<tr>
<td>child 1 - Should NOT bold</td>
<td>child 2 - Should NOT bold</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
如您所见,它会影响 table id tableChild。我希望在第一张桌子的第一行上得到一个粗体字。
这是我的JSFiddle
【问题讨论】:
-
它正在选择 any
tr元素的第一个子元素 -
你有两个
tds 是第一个孩子;带有标题的那个是外部表的第一个孩子,而带有非粗体内容的那个是该内部表的第一个孩子。也许使用代替标题? @mherzig 不是,th应该始终用于该元素专用的标题。@Martin 同意,我太客气了 :)
标签: html css css-selectors html-table