Css 如何隐藏或显示边框
我在寻找下一件事的最佳方法 我想给每个部分一个底部边框,但是当有一个部分后面有一个特定的部分时,它不应该显示底部边框Css 如何隐藏或显示边框,css,Css,我在寻找下一件事的最佳方法 我想给每个部分一个底部边框,但是当有一个部分后面有一个特定的部分时,它不应该显示底部边框 <section></section> <!-- has border-bottom --> <section></section> <!-- THIS ONE SHOULD NOT HAVE A BORDER BOTTOM, BECAUSE UNDER THIS SECTION IS A SPEC
<section></section> <!-- has border-bottom -->
<section></section> <!-- THIS ONE SHOULD NOT HAVE A BORDER BOTTOM, BECAUSE UNDER THIS SECTION IS A SPECIFIC SECTION WITH A CLASS -->
<section class="highlight"></section> <!-- has border-bottom -->
<section></section> <!-- has border-bottom -->
您不会得到CSS答案。因为到目前为止,CSS中没有上一个子选择器,您可以使用并应用该选择器从该元素中删除边框 以检查下一个元素。您需要使用JavaScript。CSS不会检查当前元素旁边的元素 但是,您可以使用CSS使用
section:nth-of-type(2) {
border: 0;
}
但是请记住,您不能在CSS语言中应用条件。这需要JavaScript。因为没有以前的选择器,所以可以通过在节上添加一个边框顶部来伪造边框底部,而不必在
节上同时包含一个边框顶部:第一个类型为
&。highlight class;另外,将底部边框添加到类型的:last
,如下所示:
section { border-top: 3px solid #aaa; }
section:first-of-type, .highlight { border-top: none; }
section:last-of-type { border-bottom: 3px solid #aaa; }
.highlight { background: yellow; }
编辑:打字错误和基本澄清。目前还没有以前的同级选择器是CSS。“previous”否定了“级联样式表”中的“级联”。投票但更喜欢使用
:nth-of-type()
@Mr.Alien,我从未使用过,所以我不知道这是CSS api的一部分。不过我已经编辑了:)而不仅仅是搜索,有什么区别,你会明白我的意思:)谢谢。css还有一个选项可以调用一个特定的div,所以我不必在洞的时候这样做吗?是的,你可以。你可以使用类或ID来定位一个特定的div。你已经知道了,不是吗?看起来这是一个很好的解决方法,我曾想过使用:before
像这样隐藏上面的边框,但这显然是一个更糟糕的解决方法。这是可行的,只有我如何才能删除高亮部分下面的底线?@Caspert尝试应用。高亮+部分{边框顶部颜色:透明}
请记住,lte IE8不支持:第一种类型和:最后一种类型。您必须使用Selectivizr[&maybe jQuery额外的选择器[取决于您的JS库]。@Caspert很奇怪,因为它在这里工作正常