display:inline-block的icon不垂直居中问题
2016-09-07 11:50
225 查看
需要了解知识点:
1、基线:基线并不是汉字的下端沿,而是英文字母x的下端沿;
2、行高指的是文本行的基线间的距离;
![](https://img-blog.csdn.net/20160907112336026?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20160907112354620?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
图片来源链接地址!
进入正题:
父元素设置line-height后,看似文本垂直居中对齐,而inline-block的icon并没有与文字对齐,如下图,因为默认的垂直对齐方式为vertical-align: baseline;这种对齐方式下,元素以基线为基准线对齐,及英文以X的下沿线与基线重合对齐,而inline-block元素以底边下沿线与基线重合对齐,所以会出现如图所示的icon偏上的情况;
![](https://img-blog.csdn.net/20160907113319792?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
解决方法设icon vertical-align: middle;这种对齐方式下,元素以中线为基准线对齐,保险起见文本也设为 vertical-align: middle;结果如下图:
1、基线:基线并不是汉字的下端沿,而是英文字母x的下端沿;
2、行高指的是文本行的基线间的距离;
图片来源链接地址!
进入正题:
父元素设置line-height后,看似文本垂直居中对齐,而inline-block的icon并没有与文字对齐,如下图,因为默认的垂直对齐方式为vertical-align: baseline;这种对齐方式下,元素以基线为基准线对齐,及英文以X的下沿线与基线重合对齐,而inline-block元素以底边下沿线与基线重合对齐,所以会出现如图所示的icon偏上的情况;
解决方法设icon vertical-align: middle;这种对齐方式下,元素以中线为基准线对齐,保险起见文本也设为 vertical-align: middle;结果如下图:
相关文章推荐
- display:inline-block 元素之间由于换行所产生的间距问题
- 解决IE中不支持display:inline-block问题
- 解决 IE7 中 display:inline-block 失效的问题
- display:inline-block替换float的问题
- display:inline-block列表布局经常会遇到的“换行符/空格间隙问题”
- display:inline-block元素间距问题
- CSS行高——line-height 文本的垂直居中(display:block;情况下)
- display:inline-block引发的水平间隙的问题
- css display inline block 兼容性问题写法
- overflow:hidden display:inline-block 行内对齐问题
- display:inline-block产生的间隙问题
- display:inline-block在360和IE7不支持问题
- display:inline-block空白间距的去除和兼容问题
- display:inline-block的间距空白问题
- display:inline-block元素间空白间隙问题
- 关于display:inline-block布局导致错位问题分析
- ie7下面不支持块级元素使用display:inline-block的问题
- inline元素设置display:inline-block存在空隙问题
- 关于display: inline-block 默认空白间距的问题
- (记录问题)li设置display:inline-block;出现缝隙?