Gra*_*yle 30 css css3 flexbox internet-explorer-10 internet-explorer-11
此示例中的LHS flex子级具有1em填充,并且它将导致RHS溢出父级:
<div style="display: -ms-flexbox; box-sizing: border-box; width: 200px; border: 5px solid black">
<div style="padding: 1em; -ms-flex-positive: 0; -ms-flex-negative: 0; -ms-flex-preferred-size: 33%; background-color: blue; box-sizing: border-box">
LHS
</div>
<div style="-ms-flex-positive: 0; -ms-flex-negative: 0; -ms-flex-preferred-size: 67%; background-color: red; box-sizing: border-box">
RHS
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这是小提琴:
当柔性儿童有填充物时,如何消除溢出?box-sizing: border-box不起作用.
smo*_*ogg 25
我flexbox和他有类似的问题box-sizing: border-box;.后者似乎在IE中似乎不起作用.宽度在这种情况下不起作用,因为填充将改变它 - 但如果你可以使用max-width,那应该解决问题.
Ari*_*iel 22
在IE flex-basis中不占box-sizing:border-box.这是一个知道错误,如下所述:https://github.com/philipwalton/flexbugs#7-flex-basis-doesnt-account-for-box-sizingborder-box
虽然现在已经修复了Edge.
一些修复:
flex-basis: calc($basisValue - $paddingValue) ←这对我来说效果最好flex-basis: automax-width: $valueall*_*rry 11
我能够通过添加以下内容解决此问题:
-ms-flex-preferred-size: calc($basisValue - $paddingValue * 2);
Run Code Online (Sandbox Code Playgroud)
因此,即使使用autoprefixer以下方法,这种组合也有效:
.element {
padding: 1rem;
flex: 0 1 20%;
-ms-flex-preferred-size: calc(20% - 2rem);
}
Run Code Online (Sandbox Code Playgroud)
calc值可以轻松覆盖自动生成的前缀,只有IE才会注意到。
| 归档时间: |
|
| 查看次数: |
12588 次 |
| 最近记录: |