关于图片(Inline, replaced elements)与父框之间底部留白的问题
2016-08-17 00:48
387 查看
如图:
原因:
IE(经测试 IE5 IE7+都会有留白)和其他浏览器在标准模式下(声明了
(IE8+及chrome firefox下父框为inline的表现, IE5 IE7表现的挺奇怪的,但是管它呢)
行内替换元素的基线与父框基线对齐是什么意思?(划重点 父框基线)
什么是baseline?(英语作业本的第三根线就是baseline)
解决方法:
1.简单粗暴的将img(默认display:inline)设为display:block;(因为vertical属性只对inline元素和table-cell元素起作用)
2.之前说了由于父框基线是根据行内元素基线来定,所以将img的vertical-align设为除了baseline以外的值;
对于vertical-align:middle/top/bottom:上面说了计算出来的行高是预留了文字基线高度的,图片基线与文字基线对齐,此时显然在这些情况里,并不存在baseline那样留有小尾巴的行为。
3.由于产生空白间隙的原因是父框预留了文字基线,那么文字的高度决定了空白的高度:
所以:
将父框的font-size置为0就可以啦(同理 将父框(block/inline/inline-block/table)的line-height置为0也是同样的道理)
IE(经测试 IE5 IE7+都会有留白)和其他浏览器在标准模式下(声明了
<!DOCTYPE html>)在父框元素(block/inline-block/inline/table/table-cell)本身并没有显性的设置行高属性时,“line-height”的默认值为”normal”此时计算出来的行高是预留了文字基线高度的(想象有文字跟在后面),行内替换元素的基线直接与父框基线对齐,因此底部有一些间隙。
(IE8+及chrome firefox下父框为inline的表现, IE5 IE7表现的挺奇怪的,但是管它呢)
行内替换元素的基线与父框基线对齐是什么意思?(划重点 父框基线)
什么是baseline?(英语作业本的第三根线就是baseline)
解决方法:
1.简单粗暴的将img(默认display:inline)设为display:block;(因为vertical属性只对inline元素和table-cell元素起作用)
2.之前说了由于父框基线是根据行内元素基线来定,所以将img的vertical-align设为除了baseline以外的值;
对于vertical-align:middle/top/bottom:上面说了计算出来的行高是预留了文字基线高度的,图片基线与文字基线对齐,此时显然在这些情况里,并不存在baseline那样留有小尾巴的行为。
3.由于产生空白间隙的原因是父框预留了文字基线,那么文字的高度决定了空白的高度:
所以:
将父框的font-size置为0就可以啦(同理 将父框(block/inline/inline-block/table)的line-height置为0也是同样的道理)
相关文章推荐
- 关于div中图片无法底部对齐的问题
- HTML中关于图片与图片之间的缝隙问题
- JAVA里面关于byte数组和String之间的转换问题
- 关于Jboss与Tomcat之间的问题
- 关于修改数据库服务器登录名与数据库用户名之间的对应问题
- 郁闷了半天,原来是这个问题:关于C#中关于图片保存到数据库以及将数据库中的图片显示到PictureBox。
- 关于处理JSP和javabean之间的中文问题
- 关于在WORD文档中插入图片的问题
- 关于异步上传图片以及上传完成后显示缩略图的问题
- 转载:关于图片叠加字符问题
- 问题-关于JS中图片预加载
- 关于ospf和isis之间的redistribution问题(很老的问题,当作自我提醒)
- 关于Eclipse和Jbuilder中使用图片的问题
- 关于图片读取的问题!
- 关于C#数据类型之间转换的问题!
- 关于更换验证码图片不刷新页面问题
- 关于MO打印时不能正确打印用DC自己画出来的图片的问题的解决方案
- VC中一个关于宏的使用问题,字符串之间转换,宽字符与普通字符
- 图片左右循环连续滚动代码,解决marquee的留白问题
- 关于eWebEditor突破上传图片大小限制的问题