Sân chơi CSS Flexbox & Grid
Xây dựng CSS Flexbox hoặc Grid một cách trực quan với điều khiển vùng chứa và từng mục, kích thước rãnh tùy chỉnh và trình chỉnh sửa grid-template-areas, rồi sao chép CSS.
Sân chơi CSS Flexbox & Grid — Chuyển đổi giữa Flexbox và Grid, đặt các thuộc tính vùng chứa, rồi tinh chỉnh từng mục con bằng điều khiển theo mục — order, flex-grow/shrink/basis, align-self và span cột/hàng trong Grid. Trong Grid bạn có thể nhập kích thước rãnh tùy chỉnh (px, fr, minmax(), auto-fit/auto-fill), vẽ bố cục grid-template-areas và chọn xuất chỉ CSS vùng chứa hay cùng với các quy tắc theo mục. Mọi thứ chạy trong trình duyệt của bạn, nên không có gì bạn cấu hình được tải lên, và bạn sao chép CSS được tạo thẳng vào bảng định kiểu.
Sân chơi CSS Flexbox & Grid là gì?
Sân chơi CSS Flexbox & Grid là một hộp cát trực quan miễn phí để học và tạo nguyên mẫu hai mô hình bố cục chính của CSS, dành cho lập trình viên front-end, học viên và nhà thiết kế. Chọn Flex hoặc Grid, đặt các thuộc tính vùng chứa và mở Cài đặt để tạo kiểu cho từng mục con: order, flex-grow, flex-shrink, flex-basis và align-self ở chế độ Flex, hoặc span cột/hàng và align-self ở chế độ Grid. Chế độ Grid còn cung cấp kích thước rãnh tùy chỉnh — gõ bất kỳ giá trị grid-template-columns/rows nào như 200px 1fr hoặc repeat(auto-fit, minmax(120px, 1fr)) — và một trình chỉnh sửa grid-template-areas trực quan nơi bạn đặt tên cho từng ô, việc này cũng tạo ra các đường lưới có tên. Bản xem trước trực tiếp gồm các ô được đánh số phản ánh mọi thay đổi, và bạn có thể xuất chỉ quy tắc .container hoặc vùng chứa cùng CSS theo mục.
Cách sử dụng Sân chơi CSS Flexbox & Grid
- Chọn Flex hoặc Grid bằng nút chuyển chế độ để quyết định xây dựng mô hình bố cục nào.
- Đặt các thuộc tính vùng chứa — flex-direction/wrap và justify/align, hoặc số cột và hàng với justify-items/align-items.
- Mở Cài đặt để thay đổi gap và số lượng mục, và để tạo kiểu cho từng mục con (order, flex-grow/shrink/basis, align-self, hoặc span cột/hàng).
- Trong Grid, chuyển kích thước rãnh sang Tùy chỉnh để gõ grid-template-columns/rows của riêng bạn — px, fr, minmax() hoặc repeat(auto-fit/auto-fill, …).
- Bật trình chỉnh sửa grid-template-areas và đặt tên cho từng ô để xếp các mục theo vùng.
- Chọn xuất chỉ CSS vùng chứa hoặc vùng chứa cùng CSS theo mục, rồi sao chép kết quả.
Ví dụ
Hàng flex căn giữa
Đầu vào
Flex · direction row · justify-content center · align-items center · gap 12
Đầu ra
.container {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 12px;
}Lưới auto-fit đáp ứng
Đầu vào
Grid · custom columns: repeat(auto-fit, minmax(120px, 1fr)) · gap 16
Đầu ra
.container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
grid-template-rows: repeat(2, 1fr);
justify-items: start;
align-items: stretch;
gap: 16px;
}Vùng mẫu holy-grail
Đầu vào
Grid · areas: header row, sidebar + main, footer row
Đầu ra
.container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(3, 1fr);
grid-template-areas:
"header header header"
"sidebar main main"
"footer footer footer";
justify-items: start;
align-items: stretch;
gap: 16px;
}Mục flex lớn dần
Đầu vào
Flex · export container + items · item 2 flex-grow 1
Đầu ra
.container {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: flex-start;
align-items: stretch;
gap: 12px;
}
.container > :nth-child(2) {
flex-grow: 1;
}Câu hỏi thường gặp
- Sự khác biệt giữa Flexbox và Grid ở đây là gì?
- Chế độ Flex sắp xếp các mục dọc theo một trục và cung cấp flex-direction, flex-wrap, justify-content và align-items. Chế độ Grid sắp xếp chúng theo hai chiều bằng grid-template-columns và grid-template-rows cùng justify-items và align-items. Chuyển chế độ bằng nút để so sánh cách mỗi mô hình xử lý cùng một kiểu căn chỉnh.
- Làm sao để tạo kiểu cho từng mục riêng lẻ?
- Mở Cài đặt và dùng điều khiển theo mục để đặt order, flex-grow, flex-shrink, flex-basis và align-self (Flex) hoặc span cột/hàng và align-self (Grid) cho từng mục con. Đặt Xuất thành 'Vùng chứa + mục' và công cụ sẽ thêm quy tắc .container > :nth-child(n) cho mỗi mục bạn tùy chỉnh.
- Tôi có thể dùng kích thước rãnh tùy chỉnh như auto-fit hay minmax() không?
- Có. Ở chế độ Grid, chuyển kích thước rãnh sang Tùy chỉnh và gõ bất kỳ giá trị grid-template-columns/rows hợp lệ nào — pixel, đơn vị fr, minmax() hoặc repeat(auto-fit/auto-fill, minmax(120px, 1fr)) cho các cột đáp ứng. Bản xem trước và CSS được tạo cập nhật khi bạn gõ.
- Trình chỉnh sửa grid-template-areas làm gì?
- Bật nó ở chế độ Grid và đặt tên cho từng ô của lưới; công cụ lắp ráp một khai báo grid-template-areas và các ô trống thành một dấu chấm. Đặt tên vùng cũng tạo ra các đường lưới có tên, và bạn có thể đặt một mục con vào một vùng bằng cách gõ tên của nó vào ô grid-area của mục đó.
- Dữ liệu của tôi có được tải lên đâu đó không?
- Không. Sân chơi chạy hoàn toàn trong trình duyệt của bạn bằng JavaScript, nên các cài đặt của bạn và CSS được tạo không bao giờ được gửi đến máy chủ. Nó hoạt động riêng tư và thậm chí ngoại tuyến sau khi trang đã được tải.
Công cụ liên quan
Mã thành ảnh
Biến một đoạn mã thành hình ảnh có tô sáng cú pháp ngay trong trình duyệt, với hơn 20 ngôn ngữ, chủ đề và nền tùy chỉnh, số dòng, cùng xuất PNG hoặc SVG.
Trình kiểm tra độ tương phản màu
Kiểm tra độ tương phản WCAG 2.1 và điểm APCA Lc giữa màu chữ và màu nền, xem các nhãn AA, AAA và 3:1, rồi áp dụng màu đạt gần nhất.
Trình trộn màu
Trộn hai màu HEX theo tỉ lệ bạn chọn trong không gian màu RGB hoặc Lab và đọc màu trung gian thu được dưới dạng mẫu màu và giá trị HEX có thể sao chép.
Trình tạo sắc độ màu
Biến một màu HEX cơ sở thành thang OKLCH, HSL hoặc RGB với số bước tùy chỉnh, gợi ý tương phản WCAG cho từng bước và xuất ra CSS, Tailwind cùng JSON.