当前位置: 首页 > 网络学院 > 网页制作基础教程 > WEB设计综合 > 用CSS按比例缩小图片

WEB设计综合
合理使用HTML标签进行CSS布局
IE中伪类:hover的使用及BUG
CSS floats创建三列式网页布局
display:inline-block的深入理解
由浅入深漫谈margin属性
PDF、ZIP、DOC链接的标注
纯CSS代码实现翻页
CSS在表格边框上的美学应用
CSS的超级技巧大放送
创造收藏夹中的个性化图
让网页里的提交按钮变得更靓
让弹出窗口变得“体贴”
在html文件中引入其它html文件
用好超级链接标记—A
HTML语言的语法基础及规则
像表格table一样轻松布局div层
XHTML+CSS布局之XHTML应用小结
Html 书签的使用
有关HTML代码的另类应用技巧
避免表格(table)被撑开变形的CSS代码

WEB设计综合 中的 用CSS按比例缩小图片


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-03-01   浏览: 1364 ::
收藏到网摘: n/a

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

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

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

<imgsrc="..."alt="..."onload="resizeImage(this)"/>

<scripttype="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事件统统去除。该是 ExpressionShow Time了,既然IE支持通过ExpressionCSS中放置一些脚本,而这段脚本又只是提供给IE 6.0及以下版本使用,那么把它写到Expression中再合适不过。

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

.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);
}

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

评论 (0) All

登陆 | 还没注册?