我试图在媒体查询中使用CSS变量,但它不起作用.
:root {
--mobile-breakpoint: 642px;
}
@media (max-width: var(--mobile-breakpoint)) {
}
Run Code Online (Sandbox Code Playgroud) 是否可以定义一个最大列数的网格,但是当屏幕宽度改变时允许元素包装到新行上?
我有隐式类,允许行包装到新行上,但是没有最大列数。
这是使用弹性盒的一种方法的代码笔
CSS:
.flex-container {
display: flex;
flex-wrap: wrap;
}
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用网格
.grid {
display: grid;
counter-reset: grid-items;
position: relative;
}
.grid--auto-fit {
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
Run Code Online (Sandbox Code Playgroud)
我想要一个相当通用的解决方案,没有Java脚本或媒体查询,我想实现的目标是否可能?
我开始使用 CSS Grid,我一直在阅读有关有助于响应的属性;所以我正在尝试构建一个包含 6 个元素的小网格;我的目的是让它们在较大的设备上显示为 2 行,如下所示:
并且为了将它们全部显示在较小的设备上,所以对于较小的设备来说一切都很好,我正在使用auto-fill它以保持响应,但是如果我在笔记本电脑屏幕或台式机上查看页面,它能够再填充一列最终看起来像这样:
display: grid;
grid-template-columns: repeat(auto-fill, 260px);
justify-content: center;
row-gap: 18px;
column-gap: 18px;
Run Code Online (Sandbox Code Playgroud)
有没有办法保持响应行为但也设置最大列数?任何帮助表示赞赏;如果它只能通过媒体查询来完成,那很好,但我首先尝试寻找不使用它们的方法。此外,我通过padding为整个网格容器设置水平以补偿附加列的大小,使其按预期工作;但同样,如果有更好的方法,我会全神贯注。谢谢!