父元素设置 line-height,inline-block 或 block 子元素的影响
在以下 html 代码中:
<div class="box"> <a href="#" class="item">哈哈哈</a> </div>
登录后复制
css 代码如下:
.box { line-height: 60px; background-color: antiquewhite; } .box .item { display: inline-block; // 如果此属性设置为 block,父元素高度会有变化。为什么? width: 600px; height: 40px; background-color: beige; }
登录后复制
当 .item 元素的 display 属性设置为 inline-block 时,父元素 .box 的高度受其子元素影响而发生变化。这是因为:
- 父元素 .box 设置了 line-height 为 60px。
- inline-block 元素的高度通常取决于其内容的大小,例如文字字体和文字大小。
- 然而,当父元素设置了 line-height 时,inline-block 元素的高度就与内容大小无关,而是以 line-height 值为准。
- 因此,inline-block 元素.item 的实际高度为 60px,导致其撑大了父元素 .box。
当 .item 元素的 display 属性设置为 block 时,父元素 .box 的高度就不会受子元素的影响而变化。这是因为:
- block 元素的高度由其内容和任何显式设置的高度属性决定。
- line-height 不会影响 block 元素的高度。
- 因此,block 元素 .item 的实际高度为 40px,不会撑大父元素 .box。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
【小浪云服务商 - 服务器12元起 - 挂机宝5元起】
THE END
暂无评论内容