CSS box sizing
Module CSS box sizing cho phép bạn chỉ định cách các phần tử vừa khít với nội dung của chúng hoặc vừa khít trong một ngữ cảnh layout cụ thể. Module này định nghĩa các thuộc tính sizing, minimum sizing và maximum sizing, đồng thời mở rộng các thuộc tính sizing của CSS với các từ khóa đại diện cho intrinsic size dựa trên nội dung và extrinsic size dựa trên ngữ cảnh.
Các phần tử có thể được sizing theo hai cách: extrinsically (từ bên ngoài) hoặc intrinsically (từ bên trong). CSS box model định nghĩa các thuộc tính liên quan đến trang để thiết lập kích thước phần tử một cách tường minh, hay còn gọi là "extrinsically", bao gồm các thuộc tính width, height, padding, và margin (cùng với các thuộc tính border được định nghĩa trong module CSS backgrounds and borders). Module CSS box sizing này mở rộng module CSS box model để cho phép phần tử được sizing theo intrinsic — thiết lập kích thước phần tử dựa trên kích thước nội dung của nó.
Các giá trị sizing được giới thiệu trong module này cho phép các phần tử có size containment sử dụng các intrinsic size tường minh, như thể chiều rộng và chiều cao của nội dung trong luồng khớp với intrinsic size tường minh đã chỉ định, thay vì được sizing như thể chúng rỗng.
Module này cũng giới thiệu khả năng định nghĩa aspect ratio cho box của phần tử, nghĩa là trình duyệt có thể tự động điều chỉnh kích thước của phần tử để duy trì aspect ratio đã chỉ định miễn là một trong các kích thước được sizing tự động.
Module logical properties and values đã mở rộng các thuộc tính có sẵn trong các module box model và box sizing để bao gồm các tương đương liên quan đến writing mode của các thuộc tính box model vật lý và intrinsic box sizing tương ứng.
Tham chiếu
>Thuộc tính
aspect-ratiobox-sizingcontain-intrinsic-block-sizecontain-intrinsic-heightcontain-intrinsic-inline-sizecontain-intrinsic-sizecontain-intrinsic-widthheightmax-heightmax-widthmin-heightmin-widthwidth
Module CSS box sizing cũng giới thiệu thuộc tính min-intrinsic-sizing. Hiện tại, không có trình duyệt nào hỗ trợ tính năng này.
Kiểu dữ liệu và giá trị
- Kiểu dữ liệu
<ratio> - Giá trị
min-content - Giá trị
max-content - Giá trị
fit-content
Hàm
Thuật ngữ bảng chú giải
Hướng dẫn
- Tìm hiểu về aspect ratio
-
Tìm hiểu về thuộc tính
aspect-ratio, thảo luận về aspect ratio cho các phần tử replaced và non-replaced, và xem xét một số trường hợp sử dụng aspect ratio phổ biến. - Giới thiệu về CSS box model
-
Giải thích một trong những khái niệm cơ bản của CSS: box model. Mô hình này định nghĩa cách CSS bố trí các phần tử, bao gồm content, padding, border và margin của chúng.
- Thành thạo margin collapsing
-
Đôi khi, hai margin liền kề được gộp thành một. Bài viết này mô tả các quy tắc điều chỉnh khi nào và tại sao điều này xảy ra, và cách kiểm soát nó.
- Mô hình định dạng trực quan
-
Giải thích mô hình định dạng trực quan.
- Kiểm soát tỷ lệ của flex item trên trục chính
-
Giải thích intrinsic sizing như một tiền đề để hiểu cách kiểm soát kích thước và tính linh hoạt của flex item trên trục chính bằng cách sử dụng
flex-grow,flex-shrink, vàflex-basis.
Khái niệm liên quan
- Module CSS logical properties
min-inline-sizeblock-sizeinline-sizemax-block-sizemax-inline-sizemin-block-sizemin-inline-sizemargin-blockmargin-inlinepadding-blockpadding-inlineborder-blockborder-inlinecontain-intrinsic-block-sizecontain-intrinsic-inline-sizeoverflow-blockoverflow-inlineoverscroll-behavior-blockoverscroll-behavior-inline
- Module CSS box model
- Shorthand
margin margin-bottommargin-leftmargin-rightmargin-topmargin-trim- Shorthand
padding padding-bottompadding-leftpadding-rightpadding-top
- Shorthand
- Module CSS backgrounds and borders
- Shorthand
border - Shorthand
border-width border-bottom-widthborder-left-widthborder-right-widthborder-top-width
- Shorthand
- Module CSS overflow
- Module CSS grid layout
- Module CSS flexible box layout
Đặc tả
| Specification |
|---|
| CSS Box Sizing Module Level 4> |
| CSS Box Sizing Module Level 3> |
Xem thêm
- Module CSS display
- Module CSS flex layout
- Module CSS grid layout
- Module CSS positioned layout
- Module CSS fragmentation