CSS - 根据第一个 child 修改 parent

标签 css

给定第一个子元素,CSS 中是否有修改父元素的方法?

在我的例子中,如果第一个 child 是一个链接,这将以不同的方式格式化表格单元格。

<td>Hello</td>
<td><a href="go.html">Go here!</a></td>

<style>
td { padding: 5px; } /* Normal cell */
?? { padding: 0px; } /* Cell with link as first child */
</style>

最佳答案

不,但你可以想出不同的方法并做类似的事情:

td { padding: 5px; } /* Normal cell */
td a { margin: -5px; } /* Cell with link as first child */

当然,还有许多其他方法可以做到这一点。

CSS4 应该提供一个 :has 伪类,它可以完全满足您的需求,但我们需要等待。

关于CSS - 根据第一个 child 修改 parent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25747188/

相关文章:

html - 低效的 CSS 选择器建议

javascript - 如何在单个 html 文件中使用 FontAwesome?

javascript - 将鼠标悬停在同级上会停止悬停效果

javascript - 一个特定的类应该通过 <div> 显示溢出 :hidden property

css - 框的高度忽略子填充框

jquery - 在多个 HTML 元素上使用相同的 CSS 类,用 JQuery 触发但不是单独触发(涉及自定义 YouTube 播放按钮)

html - 仅显示/隐藏不同的 Div

javascript - 页面首次加载时显示的侧边栏

jquery - 使用 JQuery 调整大小的阴影

html - IE 11 中的不同 IE5-Quirks-Mode?