**关闭。**此题需要debugging details。目前不接受答复。
编辑问题以包括desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将帮助其他人回答这个问题。
3天前关闭。
Improve this question
我想在div之间显示行。换句话说,我想在每个div的顶部画一条线,除了第一个。
我写了下面的CSS,除了一些div是隐藏的之外,它工作得很好。当然,由于一些div被隐藏,选择器:not(:first-child)
不再执行预期的工作。有没有办法在纯CSS中解决这个问题?
我不能使用display: none
来隐藏div有两个原因。
- 元件是可折叠的
- 这些元素必须保留在流中以用于文本搜索
.item {
height: 50px;
text-align: center;
vertical-align: middle;
line-height: 50px;
}
.item:not(:first-child) {
border-top: 1px solid red;
}
.item.hide {
overflow: hidden;
height: 0;
}
<div class="container">
<div class="item hide">Item 1</div>
<div class="item hide">Item 1</div>
<div class="item ">Item 1</div>
<div class="item hide">Item 1</div>
<div class="item hide">Item 1</div>
</div>
2条答案
按热度按时间qcbq4gxm1#
使用下一个元素~,这样两个连续的项目div就不能有HIDE类来显示边框。
njthzxwz2#
如果你想保留隐藏的div,我们可以简单地移除它们的边框,但是这样会在最后一个可见元素处留下一个分隔符