Hướng dẫn CSS

TRANG CHỦ CSS Giới thiệu CSS Cú pháp CSS Bộ chọn CSS CSS Cách thực hiện Nhận xét CSS Màu CSS Nền CSS Đường viền CSS Lề CSS CSS Padding Chiều cao / Chiều rộng CSS Mô hình hộp CSS Đề cương CSS Văn bản CSS Phông chữ CSS Biểu tượng CSS Liên kết CSS Danh sách CSS Bảng CSS Hiển thị CSS Chiều rộng tối đa CSS Vị trí CSS CSS Z-index CSS Overflow CSS Float Khối nội tuyến CSS Căn chỉnh CSS Bộ kết hợp CSS Lớp giả CSS Phần tử giả CSS Độ mờ của CSS Thanh điều hướng CSS Trình đơn thả xuống CSS Thư viện hình ảnh CSS Hình ảnh CSS Sprites Bộ chọn CSS Attr Biểu mẫu CSS Bộ đếm CSS Bố cục trang web CSS Đơn vị CSS Đặc tính CSS CSS! Quan trọng Các hàm toán học CSS

CSS nâng cao

Góc làm tròn CSS Hình ảnh đường viền CSS Nền CSS Màu CSS Từ khóa màu CSS CSS Gradients Bóng CSS Hiệu ứng văn bản CSS Phông chữ Web CSS Chuyển đổi CSS 2D Chuyển đổi CSS 3D Chuyển đổi CSS Hoạt ảnh CSS Chú giải công cụ CSS Hình ảnh phong cách CSS Phản chiếu hình ảnh CSS CSS object-fit Vị trí đối tượng CSS Mặt nạ CSS Các nút CSS Phân trang CSS CSS Nhiều cột Giao diện người dùng CSS Biến CSS Kích thước hộp CSS Truy vấn phương tiện CSS Ví dụ về CSS MQ CSS Flexbox

CSS đáp ứng

Giới thiệu về RWD RWD Viewport Chế độ xem lưới RWD Truy vấn phương tiện RWD Hình ảnh RWD RWD Video Khung RWD Mẫu RWD

Lưới CSS

Grid Intro Vùng chứa lưới Mục lưới

CSS SASS

Hướng dẫn SASS

Ví dụ về CSS

Mẫu CSS Ví dụ về CSS câu đố css Bài tập CSS Chứng chỉ CSS

Tham chiếu CSS

Tham chiếu CSS Bộ chọn CSS Chức năng CSS Tham chiếu CSS Aural Phông chữ An toàn trên Web CSS Hoạt hình CSS Đơn vị CSS Công cụ chuyển đổi CSS PX-EM Màu CSS Giá trị màu CSS Giá trị mặc định của CSS Hỗ trợ trình duyệt CSS

Kích thước hộp CSS


Kích thước hộp CSS

Thuộc tính CSS box-sizingcho phép chúng tôi bao gồm phần đệm và đường viền trong tổng chiều rộng và chiều cao của phần tử.


Không có Thuộc tính kích thước hộp CSS

Theo mặc định, chiều rộng và chiều cao của một phần tử được tính như sau:

width + padding + border = chiều rộng thực của phần tử
+ padding + border = chiều cao thực của phần tử

Điều này có nghĩa là: Khi bạn đặt chiều rộng / chiều cao của một phần tử, phần tử thường xuất hiện lớn hơn bạn đã đặt (vì đường viền và phần đệm của phần tử được thêm vào chiều rộng / chiều cao được chỉ định của phần tử).

Hình minh họa sau đây cho thấy hai phần tử <div> có cùng chiều rộng và chiều cao được chỉ định:

Div này nhỏ hơn (chiều rộng là 300px và chiều cao là 100px).

Div này lớn hơn (chiều rộng cũng là 300px và chiều cao là 100px).

Hai phần tử <div> ở trên kết thúc với các kích thước khác nhau trong kết quả (vì div2 có một phần đệm được chỉ định):

Thí dụ

.div1 {
  width: 300px;
  height: 100px;
  border: 1px solid blue;
}

.div2 {
  width: 300px;
  height: 100px;
  padding: 50px;
  border: 1px solid red;
}

Tài box-sizingsản giải quyết vấn đề này.



Với Thuộc tính kích thước hộp CSS

Thuộc box-sizingtính cho phép chúng tôi bao gồm phần đệm và đường viền trong tổng chiều rộng và chiều cao của phần tử.

Nếu bạn đặt box-sizing: border-box;trên một phần tử, phần đệm và đường viền được bao gồm trong chiều rộng và chiều cao:

Cả hai div đều có cùng kích thước bây giờ!

Hoan hô!

Đây là ví dụ tương tự như trên, box-sizing: border-box; được thêm vào cả hai phần tử <div>:

Thí dụ

.div1 {
  width: 300px;
  height: 100px;
  border: 1px solid blue;
  box-sizing: border-box;
}

.div2 {
  width: 300px;
  height: 100px;
  padding: 50px;
  border: 1px solid red;
  box-sizing: border-box;
}

Vì kết quả của việc sử dụng box-sizing: border-box;tốt hơn rất nhiều, nhiều nhà phát triển muốn tất cả các phần tử trên trang của họ hoạt động theo cách này.

Đoạn mã dưới đây đảm bảo rằng tất cả các phần tử đều được định kích thước theo cách trực quan hơn. Nhiều trình duyệt đã sử dụng box-sizing: border-box;cho nhiều phần tử biểu mẫu (nhưng không phải tất cả - đó là lý do tại sao đầu vào và vùng văn bản trông khác nhau ở chiều rộng: 100%;).

Áp dụng điều này cho tất cả các yếu tố là an toàn và khôn ngoan:

Thí dụ

* {
  box-sizing: border-box;
}

Thuộc tính kích thước hộp CSS

Property Description
box-sizing Defines how the width and height of an element are calculated: should they include padding and borders, or not