水平并列排版代码示例
这是最常见的布局方式,利用Flexbox可以轻松实现元素的水平居中、间距控制。
.container {
display: flex;
justify-content: space-between;
align-items: center;
gap: 20px;
flex-wrap: wrap;
}
.item {
flex: 1 1 300px;
padding: 20px;
background: #fff;
border-radius: 8px;
}
解析: flex-wrap: wrap 是关键,它确保了当屏幕变窄时,水平并列的元素会自动换行到下一行,而不是被挤压变形。这是实现响应式水平并列的核心。
垂直并列排版代码示例
垂直并列常用于内容流,确保每个内容块占据全宽,但在内部可能包含水平并列的子元素。
.list-container {
display: flex;
flex-direction: column;
gap: 15px;
max-width: 800px;
margin: 0 auto;
}
.list-item {
display: flex;
align-items: center;
background: #fff;
padding: 15px;
border-radius: 8px;
}
解析: 通过 flex-direction: column,我们改变了Flexbox的主轴方向。这种布局在移动端表现极佳,因为用户习惯从上到下滑动浏览。注意,gap 属性是现代CSS推荐替代 margin 的方式,能更干净地控制间距。
网格并列排版代码示例
CSS Grid提供了最强大的二维布局能力,特别适合处理复杂的网格并列需求。
.grid-container {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
gap: 20px;
}
.grid-item {
background: #fff;
padding: 20px;
border: 1px solid #eee;
}
解析: repeat(auto-fill, minmax(250px, 1fr)) 是Grid布局的神器。它的意思是:尽可能多地填充列,每列最小宽度为250px,剩余空间由 1fr 均分。这意味着无需编写任何媒体查询,网格会自动根据屏幕宽度调整列数,实现完美的响应式并列排版。