【发布时间】:2017-08-20 21:17:17
【问题描述】:
我有一个只能通过 CSS 中的这种方法选择的 div。
#parent-div #child-div {// styles}
我想更改子 div 中的所有 h1、h2、h3 和 p 标签,到目前为止,我会这样做:
#parent-div #child-div h1, #parent-div #child-div h2, #parent-div
#child-div h3, #parent-div #child-div p {
//styles
}
有没有更有效的方法来做到这一点?一遍又一遍地输入#parent-div #child-div 似乎很浪费时间。逻辑上我想做 #parent-div #child-div > h1, h2, h3, p 但我知道这行不通。
关于如何缩写这个的任何想法会很棒吗?我有很多 CSS 需要更改/样式的大型网站,我需要使用多个选择器。
【问题讨论】:
-
#parent-div #child-div > *针对child-div内的所有直系子级 -
这是 CSS 预处理器真正派上用场的地方。我知道这不是您问题的直接答案,但是如果您使用 LESS 或 SCSS 之类的东西(以牺牲更多配置为代价,并且需要在文件更改时运行观察程序来构建您的 CSS),这可能会不那么冗长。
-
我投票决定将此问题作为离题结束,因为要求重构工作代码的问题属于 Code Review 站点,而不是 Stack Overflow 站点。
-
@EmilyChewy,Tyler 为本网站做出了巨大贡献。我不认为他是在报复,只是遵循了指导方针。无论如何,
#child-div的后代还有哪些其他元素? -
@Michael_B:公平地说,罐头评论以“我投票结束这个问题作为离题,因为......”这不是第一次有人指出不必要的开场白的报复语气,现在我们有证据表明这种看法不仅仅是理论上的。
标签: css css-selectors parent-child