html - Flex div 由于其内容而悬停时会垂直增长但不会收缩

标签 html css flexbox

这是我所做的,我提取了重要部分:http://jsfiddle.net/P9Ftp/3/

我的问题是,如果该元素包含太多文本,它将换行到第二行。如果仅在悬停时空间变得太小,它会变大以正确显示文本,但一旦鼠标离开该字段就不会缩小。

通过增加左边距但不留出更多空间,文本换行:

<div id="list">
    <section>
        <div class="pre"></div>
        <div class="content">asdf asdfadsf asdfa sdf adsfadsf asdf a</div>
        <div class="post"></div>
    </section>
</div>

关键的 CSS 部分:

section:hover .content {
    margin-left: 32px;
}

这是预期的行为吗/我该怎么做才能避免这种情况?

提前致谢!

更新:似乎是 Chrome 的问题。解决方法将不胜感激。

最佳答案

一个解决方案是将 display: block; 添加到 section(或任何其他显示样式,例如 inline-block) 这会稍微改变外观,但也许您可以使用其他规则来获得所需的结果。

总的来说,我认为将 display: flex; 添加到所有元素(body * 规则)过于宽泛,可能会导致不良结果。

Chrome 上的工作 fiddle :http://jsfiddle.net/P9Ftp/4/

关于html - Flex div 由于其内容而悬停时会垂直增长但不会收缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23154638/

相关文章:

javascript - CSS 如何使用倾斜过渡为斜线设置动画

html - 将 div rgba 悬停在背景图像上而不改变文本颜色的不透明度

css - Bootstrap 折叠菜单在展开时不会向下推内容

html - 如何垂直对齐动态长度的文本,同时让其环绕 float 图像?

html - 我如何响应地处理包装图像和文本的 div?

Javascript beforesend 函数在所有 "add to cart"按钮上错误显示

javascript - jQuery - 必须按下按钮两次或更多次才能使功能保持不变

html - IE 11 <main> 未被识别为 block 元素

html - 在这种情况下如何解决网格布局问题?

css - CCS Flexbox 挑战 - 内容未按要求在框中排列