CSS3【display: flex;】与【align-content: (wrap 模式下堆栈排列);】的使用

简介: CSS3【display: flex;】与【align-content: (wrap 模式下堆栈排列);】的使用

  • align-content 简介


堆栈排列,可对应用 flex-wrap: wrap 后产生的换行进行控制,包括 flex-start、flex-end、center、space-between、space-around、stretch


  • align-content 使用


<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> * { margin: 0; padding: 0; list-style: none; } body { background-color: #eee; font-size: 22px; } h3 { margin: 10px; font-weight: normal; } section { width: 1000px; margin: 0 auto; } ul { background-color: #fff; border: 1px solid #ccc; height: 700px; } ul li { width: 200px; height: 200px; background-color: pink; margin: 10px; } section:nth-child(1) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: flex-start; } section:nth-child(2) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: flex-end; } section:nth-child(3) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; align-items: flex-end; } section:nth-child(4) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: center; } section:nth-child(5) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: space-around; } section:nth-child(6) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: space-between; } section:nth-child(7) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: stretch; } .stretch li { height: auto; } section:nth-child(8) ul { display: flex; /* 这个换行是必须的,align-content 才会生效 */ flex-wrap: wrap; /* align-content 是基于 flex-wrap: wrap; 才可以使用的属性 */ align-content: stretch; } </style> </head> <body> <section> <h3>align-content: flex-start;</h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-content: flex-end;</h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-items: flex-end; 可以比较一下上面 align-content: flex-end; 的效果,会发现行两者间距一个属于弹性间距一个会按着css设置间距来,两者的其他属性也是这样 </h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-content: center;</h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-content: space-around; 平均分摊空间,以这两行举例,行高一样,间距一样,中间行间距高,是因为有第一行的底部跟第二行的顶部间距</h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-content: space-between; 两端对齐</h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-content: stretch; 拉伸</h3> <ul class="stretch"> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> <section> <h3>align-content: stretch; 拉伸, 高度不设置 auto 状态下的样子</h3> <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> <li>6</li> </ul> </section> </body> </html>


  • demo 效果:




相关文章
|
1月前
|
前端开发
css显示模式
块级元素 独占一行 宽度默认是父级的100% 添加宽高属性生效 行内元素 尺寸由内容决定 添加宽高属性不生效 行内块元素 尺寸由内容决定 添加宽高属性生效
|
1月前
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
2月前
|
数据可视化 前端开发 搜索推荐
FLEX组件可视化设计器CSS3代码生成器
FLEX组件可视化设计器CSS3代码生成器
55 4
|
2月前
|
前端开发 开发者 容器
CSS3:flex&box-sizing
本文介绍了CSS中的Flex布局及其相关属性,如`flex-direction`、`flex-wrap`、`justify-content`等,并通过代码示例展示了如何使用这些属性来控制容器内的项目排列方式。同时,还讲解了`align-items`属性用于定义子元素在交叉轴上的对齐方式,以及`box-sizing`属性的不同取值对元素尺寸计算的影响。
|
4月前
|
前端开发 安全 容器
CSS如何优雅实现卡片多行排列布局?
【8月更文挑战第24天】CSS如何优雅实现卡片多行排列布局?
197 3
|
5月前
|
编解码 前端开发 容器
CSS Flex布局实战案例:构建响应式卡片组件
【7月更文挑战第17天】通过上述步骤,我们成功地使用CSS Flex布局构建了一个响应式的卡片组件。Flexbox不仅简化了布局代码,还让我们能够轻松实现复杂的布局效果,如响应式设计。在实战中,掌握Flexbox将大大提高前端开发的效率和网页布局的质量。希望这个案例能够帮助你更好地理解和应用Flexbox布局。
|
4月前
|
前端开发
2s 利用 HTML+css动画实现企业官网效果
2s 利用 HTML+css动画实现企业官网效果
|
28天前
|
前端开发 测试技术 定位技术
如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤
本文深入介绍了如何利用HTML和CSS构建企业级网站的全过程。从项目概述到页面结构设计,再到HTML结构搭建与CSS样式设计,最后实现具体页面并进行优化提升,全面覆盖了网站开发的关键步骤。通过实例展示了主页、关于我们、产品展示、新闻动态及联系我们等页面的设计与实现,强调了合理布局、美观设计及用户体验的重要性。旨在为企业打造一个既专业又具吸引力的线上平台。
56 7
|
28天前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
35 6