div 不受父级标签影响_解决图片、表单等标签出现空隙的问题

不知道大家在排版中有没有遇到下面的一些情况:

当我让图片并排显示;

15e86a47c6aefd693ba7748b71729ed5.png

可以看到图片产生的四周的边距问题

当我们想让input和button按钮并排显示:

e18f2868b4f94cb9ba59433a266d10fa.png

表单彼此也有空隙

或者是写了一些链接标签<a></a>:

397f4a6997a11c1b03fb326e66a42cb8.png

同样的也有空隙,虽然不影响什么,竟还有一点好看~

让我们来会想一下这些都是什么标签呢?答案是行内标签

块级元素包含内联元素如图片文字等时,内联元素默认是和父级元素的baseline(基线)对齐的,而baseline又和父级元素底边有一定的距离(这个距离和font有关,不一定是5px),所以以上代码的效果中不同div之间有间隙,这是因为图片与父元素的底边有距离。

我能想到的解决方法如下:


1.将代码并排显示(不建议使用):

dce3982e6d2e7393adbaaffb1f926c40.png
  1. 将换行的空隙注释掉:

2c534e8db1090d482a6e7ba729b2f778.png

3、于是设置img的vertical-align属性为bottom或者top

以上三种方法解决了产生的左右间隙问题,效果如下:

f282a002680ef44b84f52c370eed05ee.png

47872b7a35083cfde9f93cdc202dec28.png
  1. 给该元素加上line-height:5px;

这种方法消除了上下间隙

acb16d46a77ca8030b010e6622f236d6.png
  1. 空格产生间隙,所以给父盒子加上属性font-size:0px;

需要给文字另设大小

6、给img加上display:block;并给img 浮动float:left;

最后两种方法结果如图:

db114a05d28232139bd8520a77961f3d.png

图片等行内元素问题产生间隙问题看似不大,却实实在在的影响我们的排版布局,希望通过本文给你带来收获!

转载自【简书--贝程学院_前端】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值