html - Chrome 48 中的 Flexbox 显示不正确

标签 html css google-chrome flexbox

我在使用 Chrome 中 Flexbox 的某些功能时遇到问题。我想制作一个带有图片和描述的 block ,所以我决定使用flexboxex。 我有 flexbox 父级,其中有两个子 div。第一个 child 占宽度的 30%,第二个 child 占宽度的 70%。问题在于 Chrome 48 不保持图像比例并拉伸(stretch)其高度。看起来怎么样

Chrome 48: Flexbox display in Chrome 48

但在 Chrome 39 和 Mozilla 中一切正常。我该如何解决这个问题,或者我在代码中犯了一些错误,导致它在实际的 Chrome 版本中显示不正确? 谢谢!

这是示例的 Fiddle 代码

    .parent0 {
        display: flex;
        width: 100%;
    }

    .child1 {
        width: 30%;
        justify-content: center;
        align-items: center;
        display: flex;
        flex-direction: column;
    }

    .child2 {
        width: 70%;
        justify-content: center;
        align-items: center;
        display: flex;
    }

    .image {
        width: 50%;
        display: block;
    }
<div class="parent0">
        <div class="child1">
            <img class="image" src="http://keo.kz/img/headBlack.png">
            <img class="image" src="http://keo.kz/img/headBlack.png">
        </div>
        <div class="child2">
            <div>
            Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean malesuada lacinia lacus, ut porta ipsum
            luctus sit amet. Pellentesque dapibus massa in eros ullamcorper, vel hendrerit lectus porttitor. Class
            aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Phasellus tristique,
            magna vitae venenatis cursus, urna             elit viverra dolor, a malesuada libero lacus eu ex. Nullam a
            velit risus. Vestibulum cursus arcu quis tellus iaculis, a faucibus ipsum aliquam.

            Pellentesque id magna mauris. Nunc commodo metus eu justo feugiat, in bibendum dui porta. Nullam tempor,
            felis quis sollicitudin commodo, odio mauris suscipit metus, pulvinar malesuada diam dui vel leo. Nam porta
            , elit id venenatis placerat. Donec fringilla lectus quam, nec suscipit nibh
            feugiat semper. Nunc ut tincidunt purus.
            </div>
        </div>
    </div>

http://jsfiddle.net/sr2Lkwbh/

最佳答案

确实,Chrome 48 中存在一个恼人的错误,即 Flexbox 被破坏,这里提到:

https://github.com/angular/material/issues/6841

我对 CSS 的建议修复是:

.image {
    width: 50%;
    display: block;
    min-height: 0;
    min-width: 0;
}

关于html - Chrome 48 中的 Flexbox 显示不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35168412/

相关文章:

javascript - 将文本放在 svg 的中心

javascript - 基于巴塞罗那市时区的代码

css - 在 CSS 中,将一个 id 嵌套在另一个 id 中是否有意义或合法——例如 "#main #display img { ... }"

css - 带有幻象左填充的 Div

html - 如何删除自动 float 占位符错误?

javascript - 使用 Javascript 以编程方式将 Google Chrome 置于全屏模式?

html - Chrome 搜索输入宽度与文本输入不同

java - 如何在 javadoc 注释中更改 javadoc 中表行的颜色

javascript - 在选项卡之间切换时如何使用淡入淡出动画?

javascript - 使用 JavaScript 或 jquery 使悬停 CSS 下拉菜单可点击