Html内联元素采坑——元素底部多出空白区域

Html内联元素采坑——元素底部多出空白区域

html的元素有两类:

  1. 块级元素,如:div
  2. 内联元素,如:img、span、inline-block类型等

坑——请看下面代码和图片

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述从上面的代码和图片可以看到,el-color-picker的div的高度为30px;而其父div的高度为34px;可见,其父div多出了4px;那么这多出的4px高度从哪里来的,

下面例子也是:

在这里插入图片描述

问题:为什么块元素下含有内联元素时,块元素会有多余的高度?

上面的两个例子的这种情况,是由于内联元素vertical-alignline-height属性搞的
大家一定要意识到这么一点:对于内联元素,vertical-align与line-height虽然看不见,但实际上「到处都是」!

在HTML5文档声明下,块状元素内部的内联元素的行为表现,就好像块状元素内部还有一个(更有可能两个-前后)看不见摸不着没有高度、没有实体的空白节点,这空白节点会影响块元素的高度

上面两例子怎么解决?

1. 让vertical-align失效(推荐)
块元素会使vertical-align失效,这时可以把内联元素转为块元素,如,给el-color-picker的div或者img设置:display:block

2. 使用其他vertical-align值
告别baseline(基线)默认基线, 取用其他属性值,比方说bottom/middle/top都是可以的。

参考文章:https://www.zhangxinxu.com/wordpress/2015/08/css-deep-understand-vertical-align-and-line-height/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值