CSS 中难以捉摸的后代分组
在 HTML 和 CSS 的世界中,样式元素通常是一项需要精确和高效的任务。然而,当涉及到一组后代的样式时,缺乏简单的语法可能会令人沮丧。
考虑以下场景:您有一个包含多个列和行的 HTML 表格,并且您想要为所有列标题 (th) 和表格单元格 (td) 指定相同的样式。为什么不能简单地使用像 #myTable (th,td) 这样的选择器来实现这一点?
答案在于 CSS 语法本身。直到最近,CSS 还没有提供一种明确的方法来对选择器中的后代进行分组。相反,它要求您显式列出每个后代,如#myTable th、#myTable td。
但是,对更简洁、更有效的方法来对后代进行分组的愿望导致了最近伪类的提议和实现- 课程。 Mozilla 于 2010 年推出了 :-moz-any(),随后 WebKit 推出了 :-webkit-any()。虽然这些带前缀的伪类可以提供所需的分组功能,但由于需要特定于供应商的代码和潜在的规则集重复,它们的使用受到限制。
解决此问题的最新努力是建议的 :matches选择器级别 4 工作草案中的 () 伪类。这个新的伪类对 :any() 提案进行了改进,并且可以为后代分组提供标准化的解决方案。然而,对 :matches() 的支持仍然有限。
同时,如果您的目标是同时设计 th 和 td 元素的样式,则可以使用 #myTable tr >; * 假设表行中没有其他子元素。这种替代方案消除了单独列出后代的需要,提供了一种更有效和可读的方法。
以上是如何在 CSS 中有效地定位后代:是否有比单独列表更好的方法?的详细内容。更多信息请关注PHP中文网其他相关文章!

CSS盒子阴影和轮廓属性获得了主题。让我们查看一些在真实主题中起作用的示例,以及我们必须将这些样式应用于WordPress块和元素的选项。

Svelte Transition API提供了一种使组件输入或离开文档(包括自定义Svelte Transitions)时动画组件的方法。

前几天我只是和埃里克·迈耶(Eric Meyer)聊天,我想起了我成长时代的埃里克·迈耶(Eric Meyer)的故事。我写了一篇有关CSS特异性的博客文章,以及


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

禅工作室 13.0.1
功能强大的PHP集成开发环境

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具