如果我以百分比设置子元素的大小,则将相对于父元素的content-box计算大小,这与我已将其box-sizing
属性设置为border-box
.
所以,如果我有这样的事情:
.parent {
box-sizing: border-box;
padding: 0 100px;
width: 600px;
}
.child {
width: 50%;
}
的宽度.child
将是400px
(应用填充后父级宽度)的 50%。你可以在这里看到一个例子:JSBin
主要问题
有没有办法使子元素的宽度相对于父元素
border-box
而不是父元素的宽度content-box
?
奖金问题
在做我的例子时,我注意到在计算大小时有一个奇怪的行为。将.parent
' 的填充设置为0 10%
实际上会从每侧提供 68 多个像素的填充。这是为什么?600px 的 10% 不是 60px 还是我遗漏了什么?