假设我有几个相邻的元素:
<div class="container">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
</div>
样式如下:
.container > div {
display:inline-block;
white-space:nowrap;
}
由于我们使用display:inline-block
的是 s ,因此div
s 将作为内联元素流动。我想要做的是能够指定一个 CSS 规则,当兄弟div
s 布置在同一行上时应该应用该规则(即中间没有插入换行符)。
例如,假设div
上面的 s 如下图所示:
[ 1 ][ 2 ][ 3 ][ 4 ]
[ 5 ][ 6 ]
我想编写一个 CSS 规则来匹配元素 2、3、4 和 6(即div
s 与在同一行上布置的兄弟姐妹)或逆集(元素 1 和 5,即div
没有先前兄弟姐妹的 s布置在同一行)。
这对于样式非常有用,例如(假设++
是我正在寻找的选择器)
.container > div ++ .container > div {
/* separator between elements on the same line */
border-right:1px solid #000;
}