Hướng dẫn when should i use grid css? - khi nào tôi nên sử dụng lưới css?

Bố cục lưới CSS (Cấp 1)

- Cr

Phương pháp sử dụng khái niệm lưới để bố trí nội dung, cung cấp một cơ chế cho các tác giả chia không gian có sẵn để bố trí thành các cột và hàng bằng cách sử dụng một tập hợp các hành vi định cỡ có thể dự đoán được. Bao gồm hỗ trợ cho tất cả các thuộc tính grid-* và đơn vị fr.

Trình duyệt Chrome

  1. 4 - 24: Không được hỗ trợ: Not supported
  2. 25 - 28: Không được hỗ trợ (nhưng có sẵn polyfill): Not supported (but has polyfill available)
  3. 29 - 56: bị vô hiệu hóa theo mặc định: Disabled by default
  4. 57: Được hỗ trợ: Supported
  5. 58 - 105: Được hỗ trợ: Supported
  6. 106: Được hỗ trợ: Supported
  7. 107 - 109: Được hỗ trợ: Supported

Bờ rìa

  1. 12 - 15: Hỗ trợ một phần: Partial support
  2. 16 - 105: Được hỗ trợ: Supported
  3. 106: Được hỗ trợ: Supported

107 - 109: Được hỗ trợ

  1. Bờ rìa: Not supported
  2. 12 - 15: Hỗ trợ một phần: Not supported (but has polyfill available)
  3. 16 - 105: Được hỗ trợ: Supported
  4. Cuộc đi săn: Supported
  5. 3.1 - 5.1: Không được hỗ trợ: Supported

6 - 10: Không được hỗ trợ (nhưng có sẵn polyfill)

  1. 10.1 - 15.6: Được hỗ trợ: Not supported
  2. 16.0: Được hỗ trợ: Not supported (but has polyfill available)
  3. 16.1 - TP: Được hỗ trợ: Disabled by default
  4. Firefox: Supported
  5. 2 - 18: Không được hỗ trợ: Supported
  6. 19 - 39: Không được hỗ trợ (nhưng có sẵn polyfill): Supported
  7. 40 - 51: bị vô hiệu hóa theo mặc định: Supported

52 - 53: Được hỗ trợ

  1. 54 - 104: Được hỗ trợ: Not supported
  2. 105: Được hỗ trợ: Disabled by default
  3. 106 - 107: Được hỗ trợ: Supported
  4. Opera: Supported

9 - 27: Không được hỗ trợ

  1. 28 - 43: bị vô hiệu hóa theo mặc định: Not supported
  2. 44 - 90: Được hỗ trợ: Not supported (but has polyfill available)
  3. 91: Được hỗ trợ: Partial support
  4. I E: Partial support

5.5 - 8: Không được hỗ trợ

  1. 106: Được hỗ trợ: Supported

107 - 109: Được hỗ trợ

  1. Bờ rìa: Not supported
  2. 12 - 15: Hỗ trợ một phần: Not supported (but has polyfill available)
  3. 16 - 105: Được hỗ trợ: Supported
  4. Cuộc đi săn: Supported
  5. 3.1 - 5.1: Không được hỗ trợ: Supported

6 - 10: Không được hỗ trợ (nhưng có sẵn polyfill)

  1. 10.1 - 15.6: Được hỗ trợ: Not supported (but has polyfill available)
  2. 16.0: Được hỗ trợ: Not supported
  3. 16.1 - TP: Được hỗ trợ: Supported
  4. Firefox: Supported

2 - 18: Không được hỗ trợ

  1. 19 - 39: Không được hỗ trợ (nhưng có sẵn polyfill): Not supported

40 - 51: bị vô hiệu hóa theo mặc định

  1. 52 - 53: Được hỗ trợ: Not supported
  2. 54 - 104: Được hỗ trợ: Supported

105: Được hỗ trợ

  1. 106 - 107: Được hỗ trợ: Supported

Opera

  1. 9 - 27: Không được hỗ trợ: Not supported
  2. 28 - 43: bị vô hiệu hóa theo mặc định: Not supported (but has polyfill available)
  3. 106: Được hỗ trợ: Supported

107 - 109: Được hỗ trợ

  1. 19 - 39: Không được hỗ trợ (nhưng có sẵn polyfill): Supported

40 - 51: bị vô hiệu hóa theo mặc định

  1. 52 - 53: Được hỗ trợ: Supported

54 - 104: Được hỗ trợ

  1. 105: Được hỗ trợ: Supported

106 - 107: Được hỗ trợ

  1. Opera: Supported

9 - 27: Không được hỗ trợ

28 - 43: bị vô hiệu hóa theo mặc định

Bố cục lưới CSS vượt trội khi chia một trang thành các vùng chính hoặc xác định mối quan hệ về kích thước, vị trí và lớp, giữa các phần của một điều khiển được xây dựng từ các nguyên thủy HTML. excels at dividing a page into major regions or defining the relationship in terms of size, position, and layer, between parts of a control built from HTML primitives.

Giống như các bảng, bố cục lưới cho phép tác giả sắp xếp các phần tử thành các cột và hàng. Tuy nhiên, nhiều bố cục có thể có thể hoặc dễ dàng hơn với CSS Grid so với với các bảng. Ví dụ, các phần tử con của một thùng chứa có thể tự định vị để chúng thực sự chồng chéo và lớp, tương tự như các phần tử định vị CSS.

Ví dụ cơ bản

Ví dụ dưới đây cho thấy lưới theo dõi ba cột với các hàng mới được tạo ở mức tối thiểu 100 pixel và tối đa tự động. Các mục đã được đặt vào lưới bằng cách sử dụng vị trí dựa trên dòng.

* {
  box-sizing: border-box;
}
.wrapper {
  max-width: 940px;
  margin: 0 auto;
}

.wrapper > div {
  border: 2px solid rgb(233 171 88);
  border-radius: 5px;
  background-color: rgba(233 171 88 / 0.5);
  padding: 1em;
  color: #d9480f;
}

HTML

<div class="wrapper">
  <div class="one">Onediv>
  <div class="two">Twodiv>
  <div class="three">Threediv>
  <div class="four">Fourdiv>
  <div class="five">Fivediv>
  <div class="six">Sixdiv>
div>

CSS

.wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  grid-auto-rows: minmax(100px, auto);
}
.one {
  grid-column: 1 / 3;
  grid-row: 1;
}
.two {
  grid-column: 2 / 4;
  grid-row: 1 / 3;
}
.three {
  grid-column: 1;
  grid-row: 2 / 5;
}
.four {
  grid-column: 3;
  grid-row: 3;
}
.five {
  grid-column: 2;
  grid-row: 4;
}
.six {
  grid-column: 3;
  grid-row: 4;
}

Tài liệu tham khảo

Đặc tính

Chức năng

Loại dữ liệu

Hướng dẫn

Thông số kỹ thuật

Sự chỉ rõ
Mô -đun bố cục lưới CSS Cấp 3

Xem thêm

Bạn nên sử dụng CSS Grid để làm gì?

Bố cục lưới CSS vượt trội khi chia một trang thành các vùng chính hoặc xác định mối quan hệ về kích thước, vị trí và lớp, giữa các phần của một điều khiển được xây dựng từ các nguyên thủy HTML. Giống như các bảng, bố cục lưới cho phép tác giả sắp xếp các phần tử thành các cột và hàng.dividing a page into major regions or defining the relationship in terms of size, position, and layer, between parts of a control built from HTML primitives. Like tables, grid layout enables an author to align elements into columns and rows.

Có tốt không khi sử dụng lưới CSS?

Trong thiết kế web, lưới trở thành một tập hợp các ràng buộc liên kết các yếu tố với nhau nhưng cũng cho phép các yếu tố ra lệnh cho lưới.CSS Grid là một công cụ không thể thiếu cho các nhà thiết kế web, vì nó giúp họ tạo ra các bố cục đáp ứng thực sự.CSS Grid is an indispensable tool for web designers, as it helps them create genuinely responsive layouts.

Khi nào tôi nên sử dụng Grid hoặc Flexbox?

CSS Grid và Flexbox là các mô hình bố cục có chung điểm tương đồng và thậm chí có thể được sử dụng cùng nhau.Sự khác biệt chính là bạn có thể sử dụng lưới CSS để tạo bố cục hai chiều.Ngược lại, bạn chỉ có thể sử dụng Flexbox để tạo bố cục một chiều.you can use CSS Grid to create two-dimensional layouts. In contrast, you can only use Flexbox to create one-dimensional layouts.

Tôi có nên sử dụng CSS Grid hay Bootstrap không?

Nếu chúng ta muốn đặt nội dung chính xác trên một trang, thì CSS Grid sẽ tốt hơn, nhưng nếu chúng ta muốn tính linh hoạt của bố cục, thì chúng ta nên sử dụng bootstrap..