自适应列是一种网格设计布局,在不同的屏幕大小或设备上自动调整列的数量。以下是使用CSS Media Queries实现自适应列的示例代码:
HTML:
Item 1
Item 2
Item 3
CSS:
/* Default grid */
.grid {
display: flex;
flex-wrap: wrap;
margin: -10px; /* to compensate for grid-gaps */
}
/* Grid items */
.grid-item {
flex-grow: 1; /* all items grow to take equal space */
margin: 10px; /* grid-gap */
}
/* Media queries for adaptive columns */
@media only screen and (min-width: 768px) { /* for screens at least 768px wide */
.grid {
/* two columns */
flex-wrap: nowrap;
}
.grid-item {
flex-basis: 50%;
}
}
@media only screen and (min-width: 992px) { /* for screens at least 992px wide */
.grid {
/* three columns */
flex-wrap: nowrap;
}
.grid-item {
flex-basis: 33.3333%;
}
}
@media only screen and (min-width: 1200px) { /* for screens at least 1200px wide */
.grid {
/* four columns */
flex-wrap: nowrap;
}
.grid-item {
flex-basis: 25%;
}
}
上述代码创建了一个名为“grid”的Flex布局容器,其中包含三个名为“grid-item”的Flex子项。默认情况下,“grid-item”将均等地占用可用空间。然后使用三个媒体查询,在不同的屏幕宽度范围内更改“grid”的Flex容器属性和“grid-item”的Flex属性,从而在不同大小的屏幕上自动调整列的数量。