在本文中,我们将讨论如何使用 CSS 创建带有响应式方块的网格布局。
对于 CSS 网格,我们可以使用以下组合grid-template-columns 和 padding-bottom 技巧来创建响应式方块。 padding-bottom 技巧为正方形的填充分配一个百分比值,有效地将其纵横比设置为 1:1。
.square-container { display: grid; grid-template-columns: repeat(auto-fill, minmax(30%, 1fr)); } .square { padding-bottom: 100%; }
使用 Flexbox,我们可以使用类似的填充- 创建响应方块的底部技术。我们可以通过为 Flex 项目的填充分配百分比值来将其设置为具有相同的长宽比。
.square-container { display: flex; flex-wrap: wrap; } .square { flex-basis: calc(33.333% - 10px); margin: 5px; padding-bottom: 100%; }
请注意,这两种方法都需要使用伪元素或额外的包装器来确保百分比填充应用于方块本身,而不是其 Flex 或网格项目。
折叠将网格布局调整为较小屏幕上的单列,我们可以使用媒体查询。
@media (max-width: 768px) { .square-container { grid-template-columns: 100%; flex-direction: column; } }
通过结合这些技术,我们可以创建一个具有响应式方块的网格布局,该布局保持在不同的屏幕尺寸和设备方向上保持一致的宽高比。
以上是如何使用 CSS Grid 和 Flexbox 在网格布局中构建响应式方块?的详细内容。更多信息请关注PHP中文网其他相关文章!