Understanding the Bootstrap 3 Shift to Box-Sizing: Border-Box
As you migrate your Bootstrap themes from version 2.3.2 to 3.0.0, you may encounter noticeable differences in dimension calculations. This is primarily due to the introduction of the following styles in bootstrap.css:
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
The Reasoning Behind the Change
Bootstrap 3 adopts the "border-box" value for box-sizing for all elements by default. This approach provides several advantages, particularly for the new percent-based grid system.
With "border-box," the browser calculates the final rendered box based on the declared width. Any border and padding values are included within the box, making calculations straightforward and consistent. This eliminates the potential for complex width calculations when combining fluid grids with pixels-based gutters.
Benefits for the Grid System
The shift to "border-box" has significant benefits for the Bootstrap grid system:
Additional Advantages
In addition to the grid system benefits, "border-box" box-sizing offers general improvements:
Conclusion
The adoption of "border-box" box-sizing in Bootstrap 3 provides a number of advantages, particularly for the new grid system. This change simplifies calculations, enhances consistency, and improves cross-browser compatibility.
The above is the detailed content of How Does Bootstrap 3's `border-box` Box-Sizing Impact Layout and Grid System Calculations?. For more information, please follow other related articles on the PHP Chinese website!