html - CSS 选择器仅对表格内 td 的第一级进行样式设置

标签 html css

我有一个 <table>在另一个里面,我需要将 <td> 的第一层颜色设置为红色的唯一。

.myTable tr td {
  color: red;
}
<table class="myTable">
  <tr>
    <td>Red, please</td>
  </tr>
  <tr>
    <td>
      <table>
        <tr>
          <td>No red, thanks</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
我试过了

.myTable > tr > td {
  color: red;
}

但是,没有什么变红了。

我做错了什么?
因为我不能包含 jQuery 或任何其他外部库,所以我需要一个 CSS 的解决方案。

提前致谢。

最佳答案

.myTable > tbody > tr > td {
  color: red;
}
td > table {
    color: initial;
}
<table class="myTable">
  <tr>
    <td>Red, please</td>
  </tr>
  <tr>
    <td><table><tr><td>No red, thanks</td></tr></table></td>
  </tr>
</table>

即使您没有在 HTML 中包含 tbody 元素,它也会在 DOM 中自动创建,因此您需要将其包含在选择器中。

您需要额外的 td > table 选择器来关闭内部表格中的颜色。否则,它将继承它所在的 td 的颜色。

关于html - CSS 选择器仅对表格内 td 的第一级进行样式设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26938333/

相关文章:

javascript - 当悬停显示带有信息的对话框时,创建图像的多个可点击区域

jquery - 如何在不缩放内容的情况下缩放 div

html - 跨不同浏览器的一致网站呈现

python - 开源 html 和 css

javascript - 如何使用 D3 在现有图形中添加 X 和 Y 轴

javascript - 语义 UI - 调整选项卡/div 的大小以适应动态表格

html - 导航栏链接/元素与 CSS 大小相同

javascript - 如何通过 JavaScript 获取媒体查询定义的当前 CSS 值?

javascript - 使用 jquery 向左/向右悬停时如何为图像序列设置动画?

java - 构建 Json 对象,然后将结果与 HTML 表数据关联