編輯問題,以包括預期行為、特定問題或錯誤以及重現問題所需的最短代碼。這將有助于其他人回答問題。
使用next元素~這樣兩個連續的條目div就不會有HIDE類來顯示邊框。
.item {
height: 50px;
text-align: center;
vertical-align: middle;
line-height: 50px;
}
.item:not(.hide) ~ .item:not(.hide) {
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>
如果您想保留隱藏div,我們可以簡單地移除它們的邊界,但這會在最后一個可見元素處留下一個分隔線
.item {
height: 50px;
text-align: center;
vertical-align: middle;
line-height: 50px;
}
.item:not(:first-child) {
border-bottom: 1px solid red;
}
.item.hide {
overflow: hidden;
height: 0;
border: none;
}
<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 ">Item 1</div>
<div class="item hide">Item 1</div>
</div>