Table of Contents
What box-sizing values are available?
How to apply box-sizing effectively
1. Apply border-box globally with a reset
2. Use it selectively when needed
3. Why border-box makes layout easier
Final tip: Always include the universal box-sizing rule
Home Web Front-end CSS Tutorial How to use the box-sizing property in CSS

How to use the box-sizing property in CSS

Aug 22, 2025 am 09:26 AM
css

The two main box-sizing values are content-box and border-box; content-box includes only the content in width and height calculations, while border-box includes content, padding, and borders, making layouts more predictable; applying box-sizing: border-box globally via , ::before, *::after { box-sizing: border-box; } is recommended for consistent and intuitive sizing, especially in responsive designs, as it ensures elements stay within their specified dimensions regardless of padding or border additions, leading to easier layout management and avoiding overflow issues in flex or grid systems.

How to use the box-sizing property in CSS

The box-sizing property in CSS controls how the browser calculates an element’s total width and height. By default, CSS uses content-box, which can make layout calculations tricky because padding and borders are added on top of the element’s specified width. Using box-sizing helps create more predictable and easier-to-manage layouts.

The most common and recommended use is to set box-sizing: border-box globally, so padding and borders are included in the element’s total width and height.

What box-sizing values are available?

There are two main values for box-sizing:

  • content-box (default):
    The width and height only include the content. Padding and borders increase the total size.

    .example {
      width: 200px;
      padding: 20px;
      border: 5px solid black;
      /* Total width = 200   20*2   5*2 = 250px */
    }
  • border-box:
    The width and height include the content, padding, and borders. This makes sizing more intuitive.

    .example {
      box-sizing: border-box;
      width: 200px;
      padding: 20px;
      border: 5px solid black;
      /* Total width remains 200px; content area shrinks to fit */
    }

How to apply box-sizing effectively

1. Apply border-box globally with a reset

To make all elements use border-box, add this rule at the top of your CSS:

*,
*::before,
*::after {
  box-sizing: border-box;
}

This ensures every element, including pseudo-elements, uses the more predictable sizing model. It's a common practice in modern CSS resets and boilerplates.

2. Use it selectively when needed

If you don’t want a global change, apply box-sizing only to specific components:

.card {
  box-sizing: border-box;
  width: 300px;
  padding: 20px;
  border: 1px solid #ccc;
}

Now the .card will stay exactly 300px wide, regardless of padding or border.

3. Why border-box makes layout easier

Without border-box, creating a two-column layout with padding becomes messy:

.col-half {
  width: 50%;
  padding: 20px;
  /* Total width > 50% — columns won't fit on the same line! */
}

With box-sizing: border-box, the padding is included in the 50%, so they fit perfectly:

.col-half {
  box-sizing: border-box;
  width: 50%;
  padding: 20px;
  /* Stays within 50% including padding */
}

Final tip: Always include the universal box-sizing rule

Including this at the start of your stylesheet simplifies layout work across the entire project:

*, *::before, *::after {
  box-sizing: border-box;
}

It doesn’t override other styles and makes building responsive designs much smoother.

Basically, once you switch to border-box, you’ll wonder how you ever worked without it.

The above is the detailed content of How to use the box-sizing property in CSS. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undress AI Tool

Undress AI Tool

Undress images for free

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use CSS gradients for backgrounds How to use CSS gradients for backgrounds Aug 17, 2025 am 08:39 AM

CSSgradientsprovidesmoothcolortransitionswithoutimages.1.Lineargradientstransitioncolorsalongastraightlineusingdirectionsliketobottomorangleslike45deg,andsupportmultiplecolorstopsforcomplexeffects.2.Radialgradientsradiatefromacentralpointusingcircleo

How to create a glassmorphism effect with CSS How to create a glassmorphism effect with CSS Aug 22, 2025 am 07:54 AM

To create a glass mimicry effect of CSS, you need to use backdrop-filter to achieve background blur, set a translucent background such as rgba(255,255,255,0.1), add subtle borders and shadows to enhance the sense of hierarchy, and ensure that there is enough visual content behind the elements; 1. Use backdrop-filter:blur(10px) to blur the background content; 2. Use rgba or hsla to define the transparent background to control the degree of transparency; 3. Add 1pxsolidrgba(255,255,255,0.3) borders and box-shadow to enhance the three-dimensionality; 4. Ensure that the container has rich backgrounds such as pictures or textures to present a blurred penetration effect; 5. It is compatible with old browsers

How to create a dotted border in CSS How to create a dotted border in CSS Aug 15, 2025 am 04:56 AM

Use CSS to create dotted borders, just set the border attribute to dotted. For example, "border:3pxdotted#000" can add a 3-pixel-wide black dot border to the element. By adjusting the border-width, the size of the point can be changed. The wider borders produce larger points. You can set dotted borders for a certain side, such as "border-top:2pxdottedred". Dotted borders are suitable for block-level elements such as div and input. They are often used in focus states or editable areas to improve accessibility. Pay attention to color contrast. At the same time, different from dashed's short-line style, dotted presents a circular dot shape. This feature is widely used in all mainstream browsers.

How to change the list style in CSS How to change the list style in CSS Aug 17, 2025 am 10:04 AM

To change the CSS list style, first use list-style-type to change the bullet or numbering style. 1. Use list-style-type to set the bullet of ul to disc, circle or square, and the number of ol is decimal, lower-alpha, upper-alpha, lower-roman or upper-roman. 2. Remove the tag completely with list-style:none. 3. Use list-style-image:url('bullet.png') to replace it with a custom image. 4. Use list-style-position:in

How to change the cursor in CSS How to change the cursor in CSS Aug 16, 2025 am 05:00 AM

Usebuilt-incursortypeslikepointer,help,ornot-allowedtoprovideimmediatevisualfeedbackfordifferentinteractiveelements.2.ApplycustomcursorimageswiththecursorpropertyusingaURL,optionallyspecifyingahotspotandalwaysincludingafallbacklikeautoorpointer.3.Fol

How to implement a dark mode theme with CSS How to implement a dark mode theme with CSS Aug 22, 2025 am 09:55 AM

There are two main ways to implement dark mode: one is to use prefers-color-scheme media to query automatically to adapt system preferences, and the other is to add manual switching function through JavaScript. 1. Use prefers-color-scheme to automatically apply dark themes according to the user system. There is no need for JavaScript, just define the styles in the media query; 2. To achieve manual switching, you need to define light-theme and dark-themeCSS classes, add toggle buttons, and use JavaScript to manage the theme status and localStorage to save user preferences; 3. You can combine both to read localSt first when the page is loaded.

How to use grid-template-areas in CSS How to use grid-template-areas in CSS Aug 22, 2025 am 07:56 AM

Thegrid-template-areaspropertyallowsdeveloperstocreateintuitive,readablelayoutsbydefiningnamedgridareas;eachstringrepresentsarowandeachwordacolumncell,withgrid-areanamesonchildelementsmatchingthoseinthetemplate,suchas"headerheaderheader"for

How to add a box shadow in CSS How to add a box shadow in CSS Aug 18, 2025 am 11:39 AM

To add box shadows, use box-shadow attribute; 1. The basic syntax is box-shadow: horizontal offset vertical offset blur radius expansion radius shadows in color; 2. The first three values are required, the rest are optional; 3. Use rgba() or hsla() to achieve transparent effect; 4. The positive expansion radius expands shadows and the negative value is reduced; 5. Multiple shadows can be added by commas separation; 6. Overuse should be avoided to ensure that visibility is tested on different backgrounds; this attribute is well supported by the browser, and reasonable use can improve the design texture.

See all articles