html - 为什么为两个内联 block 兄弟 div 之一设置行高会影响两个 div?

标签 html css

我有以下内容:

<div>
    <div style="display:inline-block; ">div_1</div>
    <div style="display:inline-block; line-height:20px;">div_2</div>
</div>

为什么为第二个 div 设置 line-height 属性也会影响第一个 div?以及如何纠正这个问题我只需要第二个 div 受 line-height 的影响,因为我需要为第一个 div 指定不同的 line-height提前致谢。

document.getElementById('go').onclick = function(e) {
  document.getElementById('div_2').style.lineHeight = '30px';
};
<button id="go">Go</button>
<div>
  <div style="display:inline-block;" id="div_1">div_1</div>
  <div style="display:inline-block; line-height:24px;" id="div_2">div_2</div>
</div>

最佳答案

有了测试用例,现在一切都变得一清二楚了。

vertical-align: top 添加到第一个 div:

<div style="display:inline-block; line-height:24px; vertical-align: top" id="div_1">div_1</div>

固定版本:http://jsfiddle.net/my6Su/5/

阅读本文以了解 display: inline-blockvertical-align 之间的关系: http://blog.mozilla.com/webdev/2009/02/20/cross-browser-inline-block/

对于视觉演示也很有用:
http://www.brunildo.org/test/inline-block.html

关于html - 为什么为两个内联 block 兄弟 div 之一设置行高会影响两个 div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26046345/

相关文章:

html - 让 h2 内联到 h1 并在标题中向右浮动

php - 如何修复 while 循环中生成的多个 div 中的间隙?

html - 如何使前景垂直滚动而不是背景

javascript - 如何根据单击的父级打开链接 Jquery

javascript - jQuery IE 搞砸了

php - ?action=register URL 上的 WordPress 垃圾邮件

javascript - 使用html5mode的angularjs中的相对href路径出错

javascript - 如何根据内容将页脚固定在特定高度,如果内容增加它会变大

html - 输入类型文本在 IE8 中不会消失

javascript - 托管网站后外部 Javascript 库无法工作