青岛设计网标志 搜艺招聘
   Guest:  登陆 | 注册 | 网站首页 | 论坛首页 | 我的贴子 | 修改资料 | 留言板 | | 论坛帮助  | 论坛首页  

  论坛首页   WEB网页设计教程  符合Web标准!CSS同比例缩小图片

[公告]快到[搜艺招聘网]发布招聘信息 注册简历、发布自己作品! :)  
符合Web标准!CSS同比例缩小图片   reply disable
    zhanzhan

查看zhanzhan的博客


金钱: 792
Level: 0
发帖数: 158
最后登陆: 2008/12/12
注册时间: 2007/3/15


[鍜界値鍚冧粈涔堣嵂]姣忓ぉ娉2琚嬶紝鍧氭寔30澶╋紝鍜界値濂藉鍒
信息 | 留言

当然,生成缩略图这个工作如果交给程序来完成,效果会好很多,但是有时出于某种因素,例如服务器不支持GD之类的,难免就要请CSS代劳。

把一副大图片按比例缩小到某个尺寸,对于现代浏览器,直接使用max-width和max-height两条CSS属性即可。

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



Example Source Code

<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支持的完善,我们迟早会把图片上的onload事件统统去除。该是Expression的Show Time了,既然IE支持通过Expression在CSS中放置一些脚本,而这段脚本又只是提供给IE 6.0及以下版本使用,那么把它写到Expression中再合适不过。

最终,把一副大图片按比例缩小到50px*50px以内,可以参照以下这段CSS:


Example Source Code

.thumbImage{

max-width:50px;

max-height:50px;

}

*html.thumbImage{

width:expression(this.width>50&&this.width>this.height?50:auto);

height:expresion(this.height>50?50:auto);

}


至于图片是如何保持其高宽比例的,这张图片可以解释:



①岁半の站站




2007/5/28
信息 | 留言 | 引用 | 回复 | 编辑 | 置顶 | 移动 | 删除
回复:re:符合Web标准!CSS同比例缩小图片
    yoguz

查看yoguz的博客


金钱: 18255
Level: 0
发帖数: 1564
最后登陆: 2019/10/24
注册时间: 2004/12/13
信息 | 留言 引用 | 回复

很好的教程,比较实用!

排卵期计算器 橙创意
2007/5/28
编辑 | 删除
回复:re:符合Web标准!CSS同比例缩小图片
    BOY

查看BOY的博客


金钱: 823
Level: 0
发帖数: 165
最后登陆: 2007/12/3
注册时间: 2004/11/8
信息 | 留言 引用 | 回复

哈哈,谢谢楼主,我一直在找呢

2007/5/28
编辑 | 删除
    7     [    ]     8


青岛设计网版权所有
本论坛言论纯属发表者个人意见