如何使用CSS Flexbox实现2:5:3比例的自适应高度布局?

如何使用CSS Flexbox实现2:5:3比例的自适应高度布局?

利用css flexbox轻松构建2:5:3比例的自适应高度布局

本文介绍如何使用css弹性盒模型(Flexbox)创建一个容器,其内部三个子元素的高度比例精确为2:5:3,并能根据屏幕尺寸自动调整,始终保持比例和填充父容器高度。

我们需要一个包含三个子元素的容器,这三个子元素的高度比例需保持2:5:3,且在各种屏幕分辨率下都能完美适配。Flexbox布局能够轻松实现这一目标。

关键在于设置父容器的display: flex和flex-direction: column属性,这使得子元素垂直排列。然后,使用flex属性设置每个子元素占据空间的比例:flex: 2、flex: 5、flex: 3分别表示子元素占据父容器高度的2份、5份和3份。父容器高度会根据内容自动调整,确保子元素比例正确且自适应。为了垂直居中,我们使用了align-items: center。

以下代码片段演示了实现方法:

立即学习前端免费学习笔记(深入)”;

.container {   display: flex;   flex-direction: column;   align-items: center; /* 垂直居中 */   height: 100vh; /* 占满视口高度,可根据实际情况修改 */ }  .item1 {   flex: 2; }  .item2 {   flex: 5; }  .item3 {   flex: 3; }

为了更直观地展示效果,我们提供一个完整的html示例:

<!DOCTYPE html> <html> <head>   <meta charset="UTF-8">   <meta name="viewport" content="width=device-width, initial-scale=1.0">   <title>Flexbox Layout</title>   <style>     .container {       height: 100vh;       width: 100px;       background: #000;       display: flex;       flex-direction: column;       align-items: center;     }      .item1 {       flex: 2;       background: pink;     }      .item2 {       flex: 5;       background-color: blue;     }      .item3 {       flex: 3;       background-color: cadetblue;     }   </style> </head> <body>   <div class="container">     <div class="item1"></div>     <div class="item2"></div>     <div class="item3"></div>   </div> </body> </html>

这段代码创建了一个高度自适应、比例为2:5:3的布局。父容器高度设置为100vh,使其占满视口高度,您可以根据实际需求调整。

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享