如何实现容器内元素按比例和间距平均分布?
css 容器布局问题?
在询问如何实现按指定比例和间距在容器中平均显示元素之前,文章简要概述了遇到的问题和所需的效果。
问题描述
如何实现一个随父容器宽度自适应的高度自适应容器,其中嵌套的元素宽度百分比固定,间距也固定,且在不同宽度下保持平均分布?
问题解答
以25%的宽度和1rem的间距为例,问题的关键在于计算元素宽度:
元素宽度 = (外部宽度 - 间隙) / 项数
具体来说,宽度可以设置为:
width: calc((100% - 1rem * 5) / 4)
此外,需要添加 margin-left: 1rem 以保持间距。
替代方法
为了避免在内部元素上使用 margin,可以在外部容器上使用 padding,如下所示:
.rxc-container { padding: 1rem; } .item { width: calc((100% - 1rem * 3) / 4); margin-right: 1rem; margin-bottom: 1rem; }
使用网格布局 (grid)
网格布局提供了一种更简便的方法:
.item { height: 100px; border: 1px solid; } .rxc-container { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; padding: 1rem; }
使用网格布局,元素将自动根据分配的列数和间距平均分布。
以上就是如何实现容器内元素按比例和间距平均分布?的详细内容,更多请关注其它相关文章!