一、Flex布局使用时的坑:
1、常见的左右分布的flex布局中,左侧给定宽度,右侧占满剩余空间,但当右侧中文字内容很多时,会挤占左侧空间,时左侧不能按照定宽显示。
<style> .father{ display: flex; width: 500px; height: 200px; } .left{ width: 200px; background-color: green; } .right{ flex-grow: 1; background-color: red; } </style> <body> <div class="father"> <div class="left">左边左边边左边左边</div> <div class="right">右边</div> </div> </body>
正确宽度显示如下:
但,当右侧红框内文字变多时:
显然当右侧文字增多,挤占剩余空间时左侧会被压缩,解决方法如下:
1)给右侧添加宽度“width:0;”,指定宽度0后
.right{ flex-grow: 1; background-color: red; }
2)给设置了flex-grow属性的元素添加flex-basis属性
.right{ flex-grow: 1; background-color: red; flex-basis: 0%; }
2、flex布局中basis与width的区别,参考链接https://www.jianshu.com/p/17b1b445ecd4
原文地址:https://www.cnblogs.com/cassiel/p/9044962.html
时间: 2024-10-10 02:22:27