html - 在没有flexbox的情况下并排对齐三个div

标签 html css cross-browser

我很难并排对齐三个 div。我设法让它在 Chrome 中运行,但是当我测试其他浏览器时,它就彻底崩溃了。

我需要第一个div占用100%的可用空间,第二个div有静态宽度(160px),第三个div需要width: auto,这取决于里面的内容大小(但技术上我可以它也适用于静态宽度)。

这是我尝试过的:

.row {
  display: table;
}

.col {
  display: table-cell;
}

你可以在这里看到完整的代码:https://codepen.io/anon/pen/RLjGab

如您所见,这在 Chrome 中没有任何问题,但在其他浏览器中,只要我将任何内容放入列中,行的高度就会大于定义的高度,我很难发现为什么。

我也需要它在 IE9 中工作,所以 flexbox 是行不通的,但如果有人至少能为我指明如何实现这一目标的正确方向,那就太棒了。

提前致谢

最佳答案

我想通了,我只需要将 vertical-align: middle; 添加到他的列中,然后修复它。

关于html - 在没有flexbox的情况下并排对齐三个div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46558852/

相关文章:

javascript - 在 HTML5 中使用 JS 创建内联 SVG

CSS 未在 IE 中显示(任何版本)

Javascript:我如何找到某个类并将带有编号 ID 的 SPAN 添加到每个单词?

html - CSS 未被识别为 CSS 文件

jQuery 动画在除 Firefox 之外的所有浏览器中都失败

html - 将背景图像放入 CSS 六边形中?

jquery - 切换jquery的过渡效果

javascript - 将 Javascript keyCode 转换为非美国键盘布局的 charCode(即 azerty)

html - 在所有现代浏览器中获得相同的阴影(IE 版本 9 除外)

html - 非矩形(五边形或六边形)内的文本