问题抛出
众所周知,flex布局可以使得一行元素等分排布,但是有时候我们的需求并不是每一行的元素都是等分排布,比如应该设置成下面都样式:
解决思路 & 实现
一、不使用flex布局
1、弹性布局flex此时不再适用,因为弹性布局是会使得每一行都是根据div的个数n进行将每一个div都均分1/n的宽度。
2、使用div布局,且必须设置成行内块(inlne-block)的形式。因为等分1/n,所以使用百分比作为宽度,但是也注定不能使用magin去填充边距,只能使用padding,且在border-box的前提下。
3、h5页面同时需要考虑按钮中文案的长度以及屏幕的尺寸问题,应保证用户在手机上看和在ipad上的效果一致。可以使用display:table-cell;的方式去实现。
代码实现
<div class="line">
<span class="label-container">
<span class="label"><span class="content">1</span>