在 CSS 中使用box-sizing: border-box
时,我假设元素的总宽度将在其“宽度”值中定义。所以如果我说一个分割的宽度是20px,右边框是10px,我最终会得到一个占据20px空间的盒子,其中一半是右边框。将它推到我将宽度设置为 10px 和右边框的位置,就像这里一样:
#box {
overflow: hidden;
width: 10px;
box-sizing: border-box;
height: 50px;
background: black;
border-right: 10px solid red;
}
<div id="box"></div>
该框将仅包含红色边框。当我将宽度设置为 0px 时会发生什么?我以为它会让整个事情消失,但是不,结果和上面的完全一样:
#box-1 {
overflow: hidden;
width: 10px;
box-sizing: border-box;
height: 50px;
margin-bottom: 10px;
background: black;
border-right: 10px solid red;
}
#box-2 {
overflow: hidden;
width: 0px;
box-sizing: border-box;
height: 50px;
background: black;
border-right: 10px solid red;
}
<div id="box-1"></div>
<div id="box-2"></div>
我的问题是这是否是预期的行为。对我来说似乎不一致。我想让一个盒子消失,只控制宽度/高度。