javascript - 如何设置使用 flex 的列宽
问题描述
我正在开发样式较少的反应网络应用程序,所以在包装器下我有 3 列,这样 leftWrap 是 col-3,rightWrap 是 col-4,其余宽度是 centerWrap。我只知道它的 col-* 类名时如何应用 flex
<div className={styles.Home__wrapper}>
<div className={styles.Home__leftWrap}> .... </div>
<div className={styles.Home__centerWrap}> .... </div>
<div className={styles.Home__rightWrap}> .... </div>
</div>
.Home {
&__wrapper {
display : flex;
flex-wrap: nowrap;
width : 100%;
box-sizing: border-box;
}
&__leftWrap {
display : flex;
}
&__rightWrap {
display : flex;
}
&__centerWrap {
display : flex;
}
}
如上所述如何为每列className设置宽度,是通过cal()方法吗
解决方案
将display
容器 div 上的 CSS 属性设置为flex
,并使用flex
子元素上的属性。Flex 会将flex
分配给每个子元素的数字相加,以计算要填充的“总”步数,然后根据剩余可用空间计算每个步的值,并通过乘以计算出的步宽值来计算每个子元素的显示宽度通过子元素flex
值。在您的情况下,您的左右孩子看起来有固定的宽度,并且您希望中心元素占据剩余空间,因此只需设置flex
为1
中心元素。
._wrapper {
display : flex;
flex-wrap: nowrap;
box-sizing: border-box;
}
._leftWrap {
width: 50px;
background-color: red;
}
._rightWrap {
width: 100px;
background-color: blue;
}
._centerWrap {
flex: 1;
background-color: yellow;
}
<div class="_wrapper">
<div class="_leftWrap"> .... </div>
<div class="_centerWrap"> .... </div>
<div class="_rightWrap"> .... </div>
</div>
推荐阅读
- android - 在线程中运行的另一个方法调用的方法也会在该线程中运行吗?
- python - 如何修复 ValueError:int() 的无效文字,基数为 10:''?
- javascript - 页面加载后将类添加到元素的最后一个子元素
- codenameone - 使用 Validator 验证表单
- algorithm - 如何证明:log n = O(n^c)
- android - Flutter:如何在 RichText 小部件中插入链接
- python - Selenium 用空格定位属性名称
- arrays - 有条件地修改数组元素而不诉诸临时数组
- python - Windows HTTP 错误 500 上的 python 烧瓶网站 - 内部服务器错误
- java - 如何为类中的 2 个泛型类型重载函数