image之间的间隙、button和input之间的间隙

一、image之间的间隙

在这里插入图片描述

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

1、将图片转换为块级对像
因为存在间隙的主要问题出现在行内块元素上,即设置img为:

display:block;

2、设置图片的垂直对齐方式
即设置图片的vertical-align属性为top |middle |bottom 也可以解决。如本例中增加一组CSS代码:

 #sub img {vertical-align:top;}

3、设置父对象的文字大小为0px
即,在父元素中添加一行:

font-size:0;

  可以解决问题。但这也引发了新的问题,在父对像中的文字都无法显示。就算文字部分被子对像括起来,设置子对像文字大小依然可以显示,但在CSS效验的时候会提示文字过小的错误。(不建议使用)

4、改变父对象的属性

如果父对象的宽、高固定,图片大小随父对像而定,那么可以设置:

overflow:hidden; 

如本例中可以向#sub中添加以下代码:

width:88px;
height:31px;
overflow:hidden;

5、设置图片的浮动属性

即在本例中增加一行CSS代码:

#sub img {float:left;}

如果要实现图文混排,这种方法是很好的选择。

二、button和input之间的间隙

在这里插入图片描述
button标签和input标签之间会存在一个间距。原因是input是内联块状元素(inline-block);
内联元素是当做字体来处理的,字体之间是存在间隔的,所以内联元素之间也会有间隔。
但是大多数网站搜索框都会消除它们中间的间距。具体的做法有2种:

一、文字大小为0px

font-size:0

二、设置input为块元素,并且给一个左浮动

.search-wrapper .search input{    
    display: block;    
    float: left; 
}
  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值