Hướng dẫn is box a css property? - hộp có phải là thuộc tính css không?


Tất cả các yếu tố HTML có thể được coi là hộp.


Mô hình hộp CSS

Trong CSS, thuật ngữ "mô hình hộp" được sử dụng khi nói về thiết kế và bố cục.

Mô hình hộp CSS về cơ bản là một hộp bao quanh mọi phần tử HTML. Nó bao gồm: lề, biên giới, đệm và nội dung thực tế. Hình ảnh dưới đây minh họa mô hình hộp:

Giải thích về các phần khác nhau:

  • Nội dung - Nội dung của hộp, nơi xuất hiện văn bản và hình ảnh - The content of the box, where text and images appear
  • Đệm - Xóa một khu vực xung quanh nội dung. Phần đệm trong suốt - Clears an area around the content. The padding is transparent
  • Biên giới - một biên giới đi xung quanh phần đệm và nội dung - A border that goes around the padding and content
  • Biên độ - Xóa một khu vực bên ngoài biên giới. Biên độ trong suốt - Clears an area outside the border. The margin is transparent

Mô hình hộp cho phép chúng tôi thêm một đường viền xung quanh các phần tử và xác định không gian giữa các phần tử. & NBSP;

Thí dụ

Trình diễn mô hình hộp:

div {& nbsp; & nbsp; width: 300px; & nbsp; & nbsp; biên giới: 15px solid green; & nbsp; Đệm: 50px; & nbsp; Biên độ: 20px;}
  width: 300px;
  border: 15px solid green;
  padding: 50px;
  margin: 20px;
}

Hãy tự mình thử »



Chiều rộng và chiều cao của một phần tử

Để đặt chiều rộng và chiều cao của một phần tử một cách chính xác trong tất cả các trình duyệt, bạn cần biết cách thức hoạt động của mô hình hộp.

Quan trọng: Khi bạn đặt thuộc tính chiều rộng và chiều cao của một phần tử có CSS, bạn chỉ cần đặt chiều rộng và chiều cao của khu vực nội dung. Để tính toán kích thước đầy đủ của một phần tử, bạn cũng phải thêm phần đệm, đường viền và lề. When you set the width and height properties of an element with CSS, you just set the width and height of the content area. To calculate the full size of an element, you must also add padding, borders and margins.

Thí dụ

Trình diễn mô hình hộp:

div {& nbsp; & nbsp; width: 300px; & nbsp; & nbsp; biên giới: 15px solid green; & nbsp; Đệm: 50px; & nbsp; Biên độ: 20px;}
  width: 320px;
  padding: 10px;
  border: 5px solid gray;
  margin: 0;
}

Hãy tự mình thử »

Chiều rộng và chiều cao của một phần tử

Để đặt chiều rộng và chiều cao của một phần tử một cách chính xác trong tất cả các trình duyệt, bạn cần biết cách thức hoạt động của mô hình hộp.
+ 20px (left + right padding)
+ 10px (left + right border)
+ 0px (left + right margin)
= 350px

Quan trọng: Khi bạn đặt thuộc tính chiều rộng và chiều cao của một phần tử có CSS, bạn chỉ cần đặt chiều rộng và chiều cao của khu vực nội dung. Để tính toán kích thước đầy đủ của một phần tử, bạn cũng phải thêm phần đệm, đường viền và lề.

Phần tử này sẽ có tổng chiều rộng 350px: & nbsp;

div {& nbsp; Chiều rộng: 320px; & nbsp; Đệm: 10px; & nbsp; Biên giới: 5px màu xám rắn; & nbsp; Biên độ: 0; }

Đây là tính toán:




Thuộc tính box-sizing CSS đặt ra tổng chiều rộng và chiều cao của một phần tử được tính toán.box-sizing CSS property sets how the total width and height of an element is calculated.

Thử nó

Theo mặc định trong mô hình hộp CSS, widthheight bạn gán cho một phần tử chỉ được áp dụng cho hộp nội dung của phần tử. Nếu phần tử có bất kỳ đường viền hoặc đệm nào, thì điều này sẽ được thêm vào widthheight để đi đến kích thước của hộp được hiển thị trên màn hình. Điều này có nghĩa là khi bạn đặt widthheight, bạn phải điều chỉnh giá trị bạn đưa ra để cho phép bất kỳ đường viền hoặc đệm nào có thể được thêm vào. Ví dụ: nếu bạn có bốn hộp có

box-sizing = 
content-box |
border-box
1, nếu có bất kỳ phần đệm bên trái hoặc phải hoặc đường viền trái hoặc phải, chúng sẽ không phù hợp với một dòng trong các ràng buộc của thùng chứa cha.

Thuộc tính box-sizing có thể được sử dụng để điều chỉnh hành vi này:

  • box-sizing = 
    content-box |
    border-box
    3 cung cấp cho bạn hành vi quy mô hộp CSS mặc định. Nếu bạn đặt chiều rộng của phần tử thành 100 pixel, thì hộp nội dung của phần tử sẽ rộng 100 pixel và chiều rộng của bất kỳ đường viền hoặc đệm nào sẽ được thêm vào chiều rộng được hiển thị cuối cùng, làm cho phần tử rộng hơn 100px.
  • box-sizing = 
    content-box |
    border-box
    4 bảo trình duyệt tính đến bất kỳ đường viền nào và đệm trong các giá trị bạn chỉ định cho chiều rộng và chiều cao của phần tử. Nếu bạn đặt chiều rộng của một phần tử thành 100 pixel, 100 pixel sẽ bao gồm bất kỳ đường viền hoặc đệm bạn đã thêm, và hộp nội dung sẽ co lại để hấp thụ thêm chiều rộng đó. Điều này thường làm cho nó dễ dàng hơn nhiều để kích thước các yếu tố.
    box-sizing = 
    content-box |
    border-box
    5 là kiểu dáng mặc định mà các trình duyệt sử dụng cho các yếu tố
    box-sizing = 
    content-box |
    border-box
    6,
    box-sizing = 
    content-box |
    border-box
    7 và
    box-sizing = 
    content-box |
    border-box
    8 và cho các yếu tố
    box-sizing = 
    content-box |
    border-box
    9 có loại là
    <div class="content-box">Content boxdiv>
    <br />
    <div class="border-box">Border boxdiv>
    
    0,
    <div class="content-box">Content boxdiv>
    <br />
    <div class="border-box">Border boxdiv>
    
    1,
    <div class="content-box">Content boxdiv>
    <br />
    <div class="border-box">Border boxdiv>
    
    2,
    <div class="content-box">Content boxdiv>
    <br />
    <div class="border-box">Border boxdiv>
    
    3,
    <div class="content-box">Content boxdiv>
    <br />
    <div class="border-box">Border boxdiv>
    
    4, ____.

Lưu ý: Thường rất hữu ích khi đặt box-sizing thành

box-sizing = 
content-box |
border-box
4 để bố trí các yếu tố. Điều này làm cho việc đối phó với kích thước của các yếu tố dễ dàng hơn nhiều và thường loại bỏ một số cạm bẫy mà bạn có thể vấp ngã trong khi đưa ra nội dung của mình. Mặt khác, khi sử dụng
<div class="content-box">Content boxdiv>
<br />
<div class="border-box">Border boxdiv>
9 hoặc
div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
0, việc sử dụng
div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
1 cho phép các giá trị định vị liên quan đến nội dung và độc lập với các thay đổi đối với kích thước biên và đệm, đôi khi được mong muốn.
It is often useful to set box-sizing to
box-sizing = 
content-box |
border-box
4 to lay out elements. This makes dealing with the sizes of elements much easier, and generally eliminates a number of pitfalls you can stumble on while laying out your content. On the other hand, when using
<div class="content-box">Content boxdiv>
<br />
<div class="border-box">Border boxdiv>
9 or
div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
0, use of
div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
1 allows the positioning values to be relative to the content, and independent of changes to border and padding sizes, which is sometimes desirable.

Cú pháp

box-sizing: border-box;
box-sizing: content-box;

/* Global values */
box-sizing: inherit;
box-sizing: initial;
box-sizing: revert;
box-sizing: revert-layer;
box-sizing: unset;

Thuộc tính box-sizing được chỉ định là một từ khóa duy nhất được chọn từ danh sách các giá trị bên dưới.

Giá trị

box-sizing = 
content-box |
border-box
3

Đây là giá trị ban đầu và mặc định theo quy định của tiêu chuẩn CSS. Các thuộc tính widthheight bao gồm nội dung, nhưng không bao gồm phần đệm, đường viền hoặc lề. Ví dụ,

div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
6 hiển thị một hộp rộng 370px.

Ở đây, kích thước của phần tử được tính là: chiều rộng = chiều rộng của nội dung và chiều cao = chiều cao của nội dung. (Biên giới và đệm không được bao gồm trong tính toán.)

box-sizing = 
content-box |
border-box
4

Các thuộc tính widthheight bao gồm nội dung, đệm và biên giới, nhưng không bao gồm lề. Lưu ý rằng đệm và đường viền sẽ ở bên trong hộp. Ví dụ,

div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
6 hiển thị một hộp rộng 350px, với diện tích cho nội dung rộng 330px. Hộp nội dung không thể âm và được đặt đến 0, khiến không thể sử dụng
box-sizing = 
content-box |
border-box
4 để làm cho phần tử biến mất.

Ở đây, kích thước của phần tử được tính là: chiều rộng = đường viền + đệm + chiều rộng của nội dung và chiều cao = đường viền + đệm + chiều cao của nội dung.

Định nghĩa chính thức

Giá trị ban đầu
box-sizing = 
content-box |
border-box
3
Áp dụng choTất cả các yếu tố chấp nhận chiều rộng hoặc chiều cao
Thừa hưởngkhông
Giá trị tính toántheo quy định
Loại hoạt hìnhrời rạc

Cú pháp chính thức

box-sizing = 
content-box |
border-box

Ví dụ

Kích thước hộp với hộp nội dung và hộp viền

Ví dụ này cho thấy các giá trị box-sizing khác nhau làm thay đổi kích thước hiển thị của hai phần tử giống hệt nhau như thế nào.

HTML

<div class="content-box">Content boxdiv>
<br />
<div class="border-box">Border boxdiv>

CSS

div {
  width: 160px;
  height: 80px;
  padding: 20px;
  border: 8px solid red;
  background: yellow;
}

.content-box {
  box-sizing: content-box;
  /* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
     Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
     Content box width: 160px
     Content box height: 80px */
}

.border-box {
  box-sizing: border-box;
  /* Total width: 160px
     Total height: 80px
     Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
     Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}

Kết quả

Thông số kỹ thuật

Sự chỉ rõ
Mô-đun kích thước hộp CSS Cấp 3 # Kích thước hộp
# box-sizing

Tính tương thích của trình duyệt web

Bảng BCD chỉ tải trong trình duyệt

Xem thêm

Thuộc tính hộp là gì?

Thuộc tính hộp..
Lề trên..
Biên độ đúng ..
Lề dưới..
Biên độ trái ..
Margin..
Đệm hàng đầu ..
Đúng đúng ..
Đệm dưới cùng ..

Nội dung hộp trong CSS là gì?

Hộp nội dung.Đây là giá trị ban đầu và mặc định theo quy định của tiêu chuẩn CSS.Các thuộc tính chiều rộng và chiều cao bao gồm nội dung, nhưng không bao gồm phần đệm, đường viền hoặc lề.the initial and default value as specified by the CSS standard. The width and height properties include the content, but does not include the padding, border, or margin.

Thuộc tính CSS sử dụng để tạo một hộp là gì?

Mô hình hộp CSS là một thùng chứa chứa nhiều thuộc tính bao gồm biên giới, lề, đệm và chính nội dung.Nó được sử dụng để tạo ra thiết kế và bố cục của các trang web.Nó có thể được sử dụng như một bộ công cụ để tùy chỉnh bố cục của các yếu tố khác nhau.borders, margin, padding, and the content itself. It is used to create the design and layout of web pages. It can be used as a toolkit for customizing the layout of different elements.

Mọi thứ có phải là một hộp trong CSS không?

Mọi thứ là một hộp # trong CSS mọi thứ đều tạo ra các hộp.Một trang web về cơ bản là một tập hợp các hộp khối và nội tuyến, một cái gì đó bạn có thể hiểu rất rõ nếu bạn mở devtools trong trình duyệt yêu thích của bạn và bắt đầu chọn các yếu tố trên trang. # In CSS everything generates boxes. A webpage is essentially a set of block and inline boxes, something you get to understand very well if you open up DevTools in your favorite browser and start selecting elements on the page.