HTML img布局问题详解

11 篇文章 0 订阅
[align=center][size=large]HTML img布局问题详解[/size][/align]
[b]1.1尺寸的设置
1.1.1设置方法[/b]
对于一个img元素,可单独地修改 width或者 height 属性来设置大小,同时图片的比例保持不变。即设置宽度为原来的一半时,图片的高度并不是保持原来的大小,而是相应的变成了原来的一半,从而使得图片仍能够保持原有的比例。
[b]1.1.2设置原理[/b]
img元素属于replaced(被替换的)元素。replaced 元素表示这个元素内容的显示不是由CSS控制的。即,图片的内容不是由CSS定义的,而是通过其 src 属性指向的资源决定的。很多 replaced 元素来都会有自己的固有尺寸(Intrinsic dimension)。当 img 的高度改变后,浏览器会计算出其缩放比例,而当元素的宽度是 auto(即默认值)时,浏览器则以原始宽度 * 缩放比例来作为元素的新宽度。从而使得 img 元素的比例始终保持一致。
[b]1.1.3例外情况[/b]
当img的图片的格式是svg时,是没有固有尺寸的。所以不能采用上述方法设置其尺寸。
[b]1.2图片底部留白问题
1.2.1 CSS vertical-align属性[/b]
1、作用:
定义行内元素的基线相对于该元素所在行的基线的垂直对齐方式。
2、实例讲解
HTML代码:
<div class="pic-box">
<img src="pic.jpg">fg
</div>
设置图片vertical-align的对齐效果:如下图:
[b]1.2.2留白原因[/b]
根据CSS vertical-align属性的介绍可知:因为img标签为行内元素,所以导致其默认的垂直对齐方式为-baseline,故而图片的下底边对应了外层div的基线baseline,而baseline并不是外层元素的正真的底部(在未设置font-size为0时),而是高于底部的一条基线,所以,造成留白现象。
[b]1.2.3解决方法[/b]
1、 改变img元素的类型
即:
img{
display:block;
}
2、设置img元素的垂直对齐方式
即:
img{
vertical-align:top;
[color=green]/*或者*/[/color]
vertical-align:bottom;
[color=green]/*具体情况具体分析*/[/color]}
3、设置父级元素字体大小为零,即font-size:0;
4、设置img元素的浮动属性
即:
img{
float:left;
[color=green]/*或者*/[/color]
float:right;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值