相关文章推荐
愤怒的消炎药  ·  print-color-adjust - ...·  2 周前    · 
健身的杨桃  ·  css - hover - zc-lee ...·  1 周前    · 
紧张的烤面包  ·  UAC即Windows ...·  1 年前    · 
潇洒的牙膏  ·  MySQL ...·  1 年前    · 
首发于 web前端

CSS如何实现图片等比例缩放不变形(代码实例)

在工作中经常需要对图片进行缩放,但有些缩放会让图片变形,所以今天就给大家介绍 CSS如何实现图片等比例缩放不变形, 正在学习CSS的小伙伴赶紧过来看看吧!

下面一段代码给大家介绍CSS实现图片等比例缩小不变形 ,具体代码如下所示:

<img src="../images/bg1.jpg"alt=""/>
img {
/*等宽缩小不变形*/
/*width: 100%;*/
/*二选一*/
/*等高缩小不变形*/
height: 100%;
}

补充:CSS控制图片大小不变形

方法一、(不错,我正在用)

img {max-width:630px;myimg:expression_r(onload=function(){this.style.width=(this.offsetWidth > 630)?"630px":"auto"});}

设置最大宽度是630px 如果大于630就把图片宽度设置为630 高度就会随着比例也会缩小 不会造成图片变形

方法二

img,a img{
border:0;
margin:0;
padding:0;
max-width:590px;
width:e-xpression(this.width>590?"590px":this.width);
max-height:590px;
height:e-xpression(this.height>590?"590px":this.height);
}

方法三

div img {
max-width:600px;
width:600px;
width:expression(document.body.clientWidth>600?”600px”:”auto”);
overflow:hidden;
}

max-width:600px; 在IE7、FF等其他非IE浏览器下最大宽度为600px。但在IE6中无效。

width:600px; 在所有浏览器中图片的大小为600px;

当图片大小大于600px,自动缩小为600px。在IE6中有效。

overflow:hidden; 超出的部分隐藏,避免控制图片大小失败而引起的撑开变形。

如果想设定图片的高度和宽度都不超过某一个固定值,就需要在图片高度或宽度超过这个值的时候,让图片按比例缩小到这个尺寸。

(1)对于现代浏览器,比如Firefox或是IE7及以上,直接使用max-width和max-height两条CSS属性即可。

(2)对于IE 6.0及以下版本,以上两条CSS属性均不会被理会。之前处理这种事情,我们往往会借助Javascript,然后为图片加上onload事件。例如:

<imgsrc="..."alt="..."onload="resizeImage(this)"/>
<script type="text/javascript">
functionresizeImage(obj){
obj.width=obj.width>50&&obj.width>obj.height?50:auto;
obj.height=obj.height>50?50:auto;
}
</script>

总结:以上所述是小编给大家介绍的CSS实现图片等比例缩小不变形的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我的支持!

发布于 2020-05-21 13:08

文章被以下专栏收录