【发布时间】:2016-09-05 18:09:57
【问题描述】:
这只是 Mozilla Firefox 中的一个问题(用最新版本测试)。
我想要一个在四列中垂直居中文本的布局菜单项。
我会走 'display: table' 'vertical-align:middle' 路线,但这会阻止我在需要时应用截断,如果可能的话,我不希望添加额外的包装元素。
我正在使用以下 CSS 来实现菜单项内的垂直居中,这会强制在菜单项之间分栏:
display: flex;
align-items: center;
// or
flex-direction: column;
justify-content: center;
查看 Codepen(启用第 20 行或第 24-25 行)会破坏布局...
http://codepen.io/achisholm/pen/JXzGwE
编辑
因此,我可以通过垂直居中“hack”来实现所需的布局,但如果可能的话,我更喜欢使用 Flexbox。
http://codepen.io/achisholm/pen/mPoPPz?editors=1100
我已准备好将其归结为一个错误,因为所有其他现代浏览器都会按您的预期显示。虽然我很想知道它为什么会发生,以及它是否出于特定原因而发生。
【问题讨论】:
-
inline-block 或 inline-flex 应该避免看到容器分成 2 列 codepen.io/gc-nomade/pen/pyYyEj
-
是的@GCyrillus。看起来不错。使用截断更新您的笔:codepen.io/achisholm/pen/JXzXbO?editors=1100
标签: css firefox flexbox mozilla