0

我正在使用部分来确定页面的不同部分。这些部分的下边距为 90 像素,但是当在页面中创建/放入 ID 为“clients-full”的部分时,我希望出现在它之前/上方的任何部分的下边距为 0。我可以做这使用 CSS 选择器/伪选择器?

目前,这段代码对 ID 为“clients-full”的部分进行样式设置,但可以将其反转,以便我可以将 0 的底部边距应用于它之前的部分吗?

 section + section#clients-full {
    margin-top: -90px; // Negative margin to get around this problem...not ideal.
 }
4

1 回答 1

1

在当前定义的 CSS 实现中,选择器不能以根据元素之后的内容选择元素的方式使用,而只能根据之前的内容来选择元素。好吧,选择器链接:nth-last-child(...)在某种意义上是一个例外,但在这种情况下它们没有帮助。

因此,更好的方法是通过在它们上设置上边距来分隔这些部分,如果需要,将第一部分作为特殊情况处理(没有上边距),也许最后一个部分,使用:last-ot-type(如果在其上设置下边距需要)。然后,您可以轻松处理所描述的情况,只需使用#clients-full { margin-top: 0; }.

于 2012-09-28T11:13:28.060 回答