Lưới css
Xin chào các bạn, mình đã trở lại rồi đây. Trong phần 1 mình đã giới thiệu cho các bạn về CSS Flexbox - một trong những hệ thống bố trí cục bộ 1 chiều được sử dụng ở hầu hết các trang Web hiện tại. Ở phần 2 này, mình tiếp tục chia sẻ cho các bạn một hệ thống bố trí cục bộ dựa trên lưới 2 chiều với cả chiều dọc và chiều ngang, đó là CSS Grid. Chúng ta bắt đầu tìm hiểu nào Thuộc tính cơ bản của CSS Flexbox và CSS Grid2. Lưới CSSCSS Grid là một hệ thống bố cục cục bộ dựa trên lưới 2. Mục tiêu đích không làm gì khác hơn là thay đổi hoàn toàn cách chúng ta thiết kế giao diện người dùng dựa trên lưới Bố cục lưới phù hợp để thiết kế các trang web có độ phức tạp cao CSS Grid giới hạn thuộc tính hiển thị với 2 value is Hộp chứa lưới
2. 1 Các thuộc tính cho thành phần cha (bộ chứa lưới)grid-template-columns và grid-template-row. chia lưới thành các cột hàng lưới-mẫu-cột. tương ứng với các cột số, các giá trị sẽ tương ứng với chiều rộng của các cột lần lượt từ trái sáng phải lưới-mẫu-hàng. tương ứng với các số hàng, các giá trị sẽ tương ứng với chiều cao của các hàng lần lượt từ trên xuống dưới
________số 8_______ Thí dụ. tạo bố cục dạng lưới, chia bố cục thành 5 cột và 3 hàng tương ứng với chiều rộng và chiều cao chứa trong 2 thuộc tính trên
Ngoài ra, chúng ta có thể sử dụng phương thức lặp lại (số cột trên dòng, độ rộng cột) để chia cột và hàng trên lưới. Mình ví dụ grid-template-khu vực. sắp xếp bố cục một cách nhanh chóng, đi vào ví dụ luôn luôn nhé Giả sử bạn muốn thiết kế bố cục như sau In layout on chia làm 4 cột và 3 hàng. header chiếm chọn hàng 1, content chiếm 2 phần, sidebar chiếm 1 phần, footer chiếm chọn hàng cuối còn 1 phần nằm giữa nội dung và sidebar. Vì vậy chúng ta có 4 khối. tiêu đề, nội dung, thanh bên và chân trang
inline-grid 4
Tạo class cho item-header với thuộc tính Tạo lớp cho mục-nội dung với thuộc tính Tạo class cho item-sidebar với thuộc tính Tạo class cho item-footer với thuộc tính Sau đó chúng ta thiết lập thuộc tính grid-template-areas cho grid-container như sau
Mình giải thích qua nhé. item-header ở hàng đầu tiên sẽ chiếm 4 cột do đó sẽ là toàn bộ hàng đầu tiên sẽ là 4 tiêu đề giá trị, tương tự như chân trang. Ở hàng thứ 2, item-content sẽ chiếm 2 cột nên sẽ là 2 giá trị nội dung. Dấu chấm là bỏ trống lấy 2 phần. At item-sidebar will get 1 column should value is 1 sidebar. Theo mình nghĩ thì việc tạo layout theo khu vực cũng khá đơn giản và nhanh chóng
2. 2. Các thuộc tính cho thành phần con (grid item)
Thí dụ. item1 bắt đầu cột 1 và kết thúc ở cột 4, item2 bắt đầu ở cột 1 và kết thúc ở cột 2, item3 bắt đầu ở cột 1 và kết thúc ở cột 3
pauseVì thế là mình đã kết thúc bài viết chia sẻ về cách thiết kế bố cục sử dụng CSS Flexbox và CSS Grid. Hi vọng bài viết sẽ giúp các bạn trong quá trình tìm hiểu và làm việc. |