使用 CSS3 对带有隐藏行的表格进行 Zebra 条纹?

2024-01-12

我有一张桌子

<table id="mytable">
    <tr style="display: none;"><td>&nbsp;</td></tr>
    <tr><td>&nbsp;</td></tr>
    <tr style="display: none;"><td>&nbsp;</td></tr>
    <tr><td>&nbsp;</td></tr>
    <tr><td>&nbsp;</td></tr>
    <tr><td>&nbsp;</td></tr>
 </table>

我正在尝试将表条带设置为使用第 n 个子选择器,但似乎无法破解它。

 table #mytable tr[@display=block]:nth-child(odd) { 
      background-color:  #000;  
 }
 table #mytable tr[@display=block]:nth-child(odd) { 
      background-color:  #FFF;
 }

我很确定我已经很接近了……似乎还无法破解它。

有人传递线索吗?


这就是您所能得到的最接近的结果。请注意,您无法使nth-child仅计算显示的行数;nth-child无论如何,都会采用第 n 个子元素,而不是与给定选择器匹配的第 n 个子元素。如果您希望丢失某些行并且不影响斑马条纹,则必须通过 DOM 或在服务器端将它们完全从表中删除。

#mytable tr:nth-child(odd) {
  background-color: #000;
}

#mytable tr:nth-child(even) {
  background-color: #FFF;
}
<table id="mytable">
  <tr><td>&nbsp;</td></tr>
  <tr><td>&nbsp;</td></tr>
  <tr><td>&nbsp;</td></tr>
  <tr><td>&nbsp;</td></tr>
  <tr><td>&nbsp;</td></tr>
  <tr><td>&nbsp;</td></tr>
</table>

以下是我所做的修复:

 table #mytable tr[@display=block]:nth-child(odd) { 
      background-color:  #000;  
 }

无需为某个对象指定祖先选择器id基于选择器;只有一个元素可以匹配#table,因此您只需添加额外的代码即可table in.

 #mytable tr[@display=block]:nth-child(odd) { 
      background-color:  #000;  
 }

Now, [@display=block]将匹配具有属性的元素display设置为阻止,例如<tr display=block>。 Display 不是有效的 HTML 属性;你似乎想要做的是让选择器匹配元素的样式,但你不能在 CSS 中做到这一点,因为浏览器需要应用 CSS 中的样式才能弄清楚这一点,这当它应用这个选择器时,它正在执行。因此,您将无法选择是否显示表行。自从nth-child无论如何只能采用第 n 个子级,而不是带有某些属性的第 n 个子级,我们将不得不放弃 CSS 的这一部分。还有nth-of-type,它选择相同元素类型的第 n 个子元素,但这就是您所能做的。

 #mytable tr:nth-child(odd) { 
      background-color:  #000;  
 }

现在你就得到了它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 CSS3 对带有隐藏行的表格进行 Zebra 条纹? 的相关文章

  • 使用最后一个子选择器减少 CSS

    我在用less并试图得到last输入有一个边距底部 of 10px 这是我所拥有的 但它不起作用 并且没有在最后一个输入上应用 margin bottom 有什么想法吗 input margin bottom 0px last child
  • 如何使用CSS缩进多级select optgroup?

    只是试图通过嵌套深度缩进 optgroup 块 我尝试了一般margin left规则 嵌套元素然后尝试应用相同的规则 尝试过padding left 这样的缩进可能吗 看起来很简单 P 在下面的示例中 标记为 client2 a 的 op
  • Bootstrap

    我正在尝试使用 Bootstrap 构建一个网站 到目前为止 一切都按计划进行 我想要一个固定的导航栏 并且我正在使用内置函数 div class navbar navbar fixed top 这很棒 正是我所需要的 但我希望导航和标题从
  • 如何在 CSS 中将 RadioButton 图标样式设置为无(在 Flex 3 中)?

    您可以通过在 CSS 中设置以下值来在 Flex 中设置 RadioButton 的外观 upSkin Embed overSkin Embed ownSkin Embed disabledSkin Embed selectedUpSkin
  • Bootstrap 4 Beta 0 网格系统上的 Rowspan

    您好 我正在开发一个使用 Bootstrap 4 Beta 的电子商务模板 我让它在移动设备上工作 但在桌面设备上我不知道如何让购买按钮保持在标题下 在我的方法中 它出现在 图库 部分下 Desired Desktop Desired Mo
  • Angular SlickGrid 对齐标题文本

    我正在使用角度SlickGrid并希望将列标题中的文本居中或右对齐 并非所有列都以相同的方式 我发现 有一个headerCssClass列定义中的属性 但我一直尝试 这种样式似乎从未被应用 对于列定义 id sourceNumber nam
  • Bootstrap 4 移动导航栏消失

    我刚刚从 Bootstrap 3 转换为 Bootstrap 4 但我的移动导航栏出现问题 使用切换按钮展开导航栏时 导航消失 我不明白为什么会发生这种情况 导航栏下方有一个大屏幕 但整个移动导航向上移动 如下面的 gif 所示 以下是导航
  • 使用 float:left 与 display:inline-block 的 jQuery UI 拖放排序比较

    我这里有两个例子 这两个例子之间的唯一区别是 一种使用display inline block 另一种使用float left li doc item 显示 内联块 与 li doc item float left 我的问题是 displa
  • 使用flex-basis控制行上显示的项目数

    我想在使用 Flex 时将元素推出以隐藏它们 例如 如果flex basis为 50 仅显示两个项目弯曲到给定空间 而其他元素则在overflow hidden 领土 Or if flex basis为 25 则仅显示 4 个 Flex 元
  • 为什么这些内联块元素会产生额外的宽度?

    这是这个问题的后续内容 仅使用 css 自动调整图像下的文本 https stackoverflow com questions 34185547 autofit text under image with only css 为什么这段代码
  • 我应该创建一个块还是一个元素 BEM CSS?

    Bem官网说 创建一个块如果一段代码可以被重用并且它不依赖于正在实现的其他页面组件 创建一个元素如果一段代码在没有父实体 块 的情况下无法单独使用 我有一个 关于部分 块 它的元素依赖于父级并且不能在网站中重复使用 如何根据 bem 这段代
  • Bootstrap 3 工具提示被包裹在每个空白处?

    升级到 bootstrap 3 后 工具提示会包裹在每个空白处 我相信这是由于网格而发生的 因此 如果我为文本框选择列 col sm 3 并且如果我将工具提示放在右侧 它将包裹所有空白并显示如下 如果我执行 data placement t
  • 如何在javascript中获取基本url

    我正在建立一个网站代码点火器 http ellislab com codeigniter 我有各种资源 我用base url http ellislab com codeigniter user guide helpers url help
  • 如何向 div 添加“闪耀”叠加层?

    如何添加如下图所示的漂亮叠加层 考虑以下 HTML 我将如何添加这样的覆盖层 我知道我可以在它上面使用渐变 并对角应用它 但我也可以弯曲它吗 div class photostrip div class overlay div img sr
  • 我不明白 flex-grow 属性吗?

    恐怕我一定不明白flex grow 如果你跳到下面的 JSFiddle 按照我的理解 big应该是另一个大小的三倍 flex item 正如你所看到的 事实并非如此 为什么 http jsfiddle net nrur6mmo http j
  • 通过 Javascript 更改 Webkit 属性?

    请帮助我 可能是因为我对 CSS 动画和 Javascript 相当陌生 但我使用的代码应该更改它的属性 当我运行代码时 它会执行代码中的所有其他操作 除了更改所需 div 的 CSS 属性 我已经尝试了所有这四种方法 但似乎都不起作用 它
  • 使用Java获取CSS文件中图像的URL?

    我正在尝试使用 Java 获取远程 CSS 文件中图像 所有 MIME 类型 的 URL 我正在使用 jsoup 来获取 css 的 URL 经过无数个小时的观看CSS解析器 http cssparser sourceforge net 由
  • 使用位置的最大缺点是什么:绝对和顶部/左侧超过浮动和边距+填充,如果网站是固定宽度(970px),居中?

    使用CSS定位最大的缺点是什么 来自 Dreamweaver AP 部门 http livedocs adobe com en US Dreamweaver 9 0 help html content WScbb6b82af55445948
  • HTML/CSS:页面左侧的导航栏

    我发现创建这样具有良好语义的布局很尴尬 左侧是大约 150 像素宽的列 其中包含导航元素 我想将网站这部分的 HTML 放在 HTML 代码的开头 然后有一个简单的方法来强制页面的其余部分不侵占左侧的区域 150 像素列 我考虑过一些选择
  • Flexbox 列的垂直间距相等

    我在CSS中努力让我的Flexbox在垂直等距的列中显示项目 从而使列的每行之间的空间均匀 html body flex container margin 0 height 100 width 100 body font family Dr

随机推荐