我们有
<div class="xTable">
<table>
<tr>
<td>
<div class="xTable">
<table>
<tr>
<td>
<div class="xTable">
<table>...</table>
</div>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
如何将自定义css样式应用于“第二个div”,仅适用于第二个div,而不适用于第1或第3或更深的级别?
无法添加额外的类或ID! Html是动态生成的且无法管理。
我会使用:
.xTable table .xTable
但这意味着第三个及更深层次的div也会受到影响。
不要使用ID!请使用CSS选择器。
谢谢!
>
选择器只选择子元素,而不会选择更深的元素。例如body > .xTable > .xTable
不起作用,因为.xTable
不是.xTable
的直接子元素;同样地,body > .xTable > table .xTable
会将样式应用于第一个.xTable
子table
中包含的所有.xTable
元素(从而为您的第二个和第三个.xTable
元素同时设置样式)。为了不选择更深的元素,您必须像这样操作,x 的父元素 y 的父元素 z ...
而不是x 的父元素 y 的父元素或祖先 z ...
。 - James Donnelly