Với các chức năng repeat()
và auto-fit
/auto-fill
thật dễ dàng để có được các mục lưới để bọc khi có một mẫu chiều dài được xác định cho các cột hoặc hàng.Làm thế nào để có được các mục lưới có độ dài khác nhau để quấn?
Trong ví dụ bên dưới, tất cả các cột có chiều rộng tối thiểu là 100px và chiều rộng tối đa là 1fr.
#grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
grid-gap: 1em;
}
#grid > div {
background-color: #ccddaa;
padding: 10px;
}
<div id="grid">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
</div>
Nhưng khi các bài hát không có hoa văn dài (ví dụ, độ dài khác nhau một cách ngẫu nhiên), làm thế nào có thể các mặt hàng lưới được thực hiện để quấn?
Trong ví dụ bên dưới, cột đầu tiên có chiều rộng 60%. Cột thứ hai là min/max 250px/1fr. Làm thế nào tôi có thể lấy cột thứ hai để bọc trên màn hình nhỏ hơn?
#grid {
display: grid;
grid-template-columns: 60% minmax(250px, 1fr);
grid-gap: 1em;
}
#grid > div {
background-color: #ccddaa;
padding: 10px;
}
<div id="grid">
<div></div>
<div></div>
</div>
Tôi biết flexbox và phương tiện truyền thông truy vấn cung cấp giải pháp, nhưng tôi đang tự hỏi nếu Lưới Giao diện có thể làm điều này. Tôi đã tìm kiếm số spec nhưng không tìm thấy gì. Có lẽ tôi đã bỏ lỡ phần. Cảm ơn bạn đã giúp đỡ.
lưới xây dựng lưới qua cột và hàng, làm cho mỗi hàng và cột có cùng kích thước, như bảng HTML. Giống như bảng, các phần tử có thể mở rộng một vài hàng và hoặc cột, .. nhưng nó cần phải được đặt trong css cho mỗi vùng chứa thông qua một lớp/id hoặc một lớp giả. tự động điền có thể làm cho số lượng mục thay đổi, nhưng chiều rộng cột và chiều cao của hàng sẽ lấy các phần tử rộng nhất mà nó chứa. xem: https://www.w3.org/TR/css-grid-1/#auto-repeat auto-fit có thể là những gì bạn đang tìm kiếm –
Cảm ơn bạn. Tôi quen thuộc với khái niệm bố cục đó và phần trong spec ([Tôi đã viết về nó trước đây] (https://stackoverflow.com/q/46226539/3597276)). Tôi đã tự hỏi nếu Grid có một phương pháp khác để gói bài hát, hoặc thông qua một phương pháp mà tôi chưa phát hiện hoặc bằng cách tạo ra, giả sử lưới 12 cột, sau đó sử dụng vị trí dựa trên dòng để làm cho các mục trải rộng trên các cột và cuối cùng quấ[email protected] G-Cyr –
oups, nop không may như xa như tôi biết, nó không, bạn có thể kết thúc với thất bại chồng chéo nhau không may :(Câu hỏi và kỳ vọng của bạn có vẻ rất giống với nội tuyến 101 hành vi ... Nó sẽ là một tính năng tốt đẹp và thông minh thực sự –