我正在将Bootstrap主题从v2.3.2迁移到v3.0.0,我注意到的一件事是,由于bootstrap.css中的以下样式,许多尺寸的计算方式有所不同。
*,
*:before,
*:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
谁能解释为什么Bootstrap将所有元素的框大小切换为border-box?我怀疑这与基于百分比的新网格系统有关,但是上面的选择器显然不仅适用于网格元素。
似乎有点激进的恕我直言:-)
有人愿意提供一些见识吗?
11
感谢您的CSS代码段;这正是我想要将其应用于非引导项目的目的。:)
—
berto 2014年
有人知道为什么需要*:before和*:after吗?
—
limscoder 2014年
@limscoder
—
buschtoens 2014年
*:before
和*:after
也需要将此框模型应用于:before
和:after
伪元素。
*选择器使开发人员难以在CSS的其他位置使用content-box或padding-box。从头开始一个新项目的最佳实践是
—
JarekPrzygódzki16年
html { box-sizing: border-box; } *, *:before, *:after { box-sizing: inherit; }