如果指定了文本溢出,浏览器如何计算弹性框的宽度

时间:2015-08-21 17:42:23

标签: css flexbox

所有

如果我设置了flexbox文本溢出:省略号;并将其flex指定为1 1 auto;当我收缩那个flexbox时,浏览器如何计算auto的值?

<style>
    .flexcontainer {
        display:flex;
        flex-flow: row nowrap;
        width:100%;
        height:auto;
    }
    .test {
        flex: 1 1 auto;
        text-overflow:ellipsis;
        overflow:hidden;
        white-space: nowrap;
    }
</style>

<div class="flexcontainer">
    <div class="test">This is a flexbox to thrink</div>
    <div class="test">This is another flexbox to thrink</div>
</div>

是否仍然没有裁剪的文本的全长?就像浏览器首先获得文本的总长度而没有在那两个.test div中裁剪并使用.flexcontainer的宽度减去总数来获得收缩宽度?

与此相关的另一个问题是:

[1]浏览器如何决定Flexbox是在徘徊还是在增长?

[2]如果我给flex非常大的数字作为flex:1 1 10000000px,浏览器如何计算thrink?

由于

1 个答案:

答案 0 :(得分:1)

Flex-basis Reference

  

设置为根据元素大小自动调整元素大小的弹性基础值   属性(它本身可以是关键字auto,其大小为   元素基于其内容)。

因此,根据上面的定义,当容器宽度小于内容宽度时,浏览器会使用text-overflow: ellipsis

enter image description here

enter image description here