html - CSS 选择器只选择外部元素

标签 html css css-selectors

我有以下 html:

 <table class="classA">
   <tbody>
      <tr>
         <td>
         </td>
      </tr>
      <tr>
         <td>
            <table>
               <tbody>
                  <tr>
                     <td>
                     </td>
                  </tr>
               </tbody>
            </table>
         </td>
      </tr>
   </tbody>
</table>

我想做的是只格式化外表,不包括里面的表。

我当前使用的 CSS 选择器是:

table.classA, table.classA th, table.classA td {
    //beautiful css here
}

但是上面的选择器会选择classA表中的所有元素。 那么我该怎么做呢?

最佳答案

您可以使用直接子选择器 > .并将您的选择器转换为:

table.classA, table.classA > tr > th, table.classA > tr > td {
    //beautiful css here
}

这将仅针对 <tr> 内的元素谁的直接 parent 是tableclassA .

现在,可悲的是,这种“具有此父级”类型的选择器通常不利于 CSS 性能(因为它必须遍及整个 DOM 树并检查元素的父级)。我建议大量使用类。

关于html - CSS 选择器只选择外部元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35597035/

相关文章:

php - 提交后出现错误结果 IE8 的错误 css

php - 将设计从表格转换为 div?

javascript - 如何设置 Google 自定义搜索引擎的样式,使其不显示为 block 元素

html - 如何选择具有特定类别的元素?

CSS隐藏父切换检查

javascript - quertySelector 返回空值是什么意思?

html - 两个 css 规则 "seemingly"具有相同的特异性权重但不会产生相同的结果

html - 哪些浏览器支持input属性-multiple

javascript - JS Dom 操作问题

像素位置的 CSS 渐变(不是 %)