CSS限定图片宽高在范围内等比缩放(img缺省宽高属性)
2017-10-30 13:55
906 查看
在标准浏览器中,我们可以通过
img{ max-width:400px; max-height:200px; }
CSS样式控制图片,限定img图片在指定范围内等比缩放。该功能实现的前提是最终显示的img标签必须缺省 宽度 或 高度 属性(img图片没有宽高属性)。
img{ max-width: 400px; max-height:200px; }失效的原因:
一般,web后台或前台用户在编辑图片时,可能会手动设定img标签的宽高属性。因为img元素标签的属性为最高优先级,所以通过css样式控制的图片最大宽高属性会失效。此时图片的显示会由于img本身的宽高属性决定,因此,图片很可能变形。
解决方法:js控制图片的宽高属性输入或后台过滤,去掉img标签的宽高属性等。
Img未定义宽高属性时,IE7的表现符合web标准;因此,不需要为IE7单独设置样式
IE6不识别max-width,
max-height,需使用hack处理
img{ _width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":true);
_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":true);
}(img缺省宽高属性有效)
img{ _width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":"auto");
_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":"auto");
}(忽略img设定的宽高属性,强制img图片在范围内等比缩放)
综上所叙:
在img图片未设定宽高属性时,可使用样式:
img{max-width:400px;max-height:200px;_width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":"auto");_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":"auto");
或
img{max-width:400px;max-height:200px;_width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":true);_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":true);
实现图片在一定宽高范围内的等比缩放。(需关注的是IE6中css表达式的运行效率)
关于ie6中用js实现图片在范围内等比缩放的控制方法的显示效果差异,未验证待续。
转载地址:http://haitaowang.blog.163.com/blog/static/1280231192012112424314819/
img{ max-width:400px; max-height:200px; }
CSS样式控制图片,限定img图片在指定范围内等比缩放。该功能实现的前提是最终显示的img标签必须缺省 宽度 或 高度 属性(img图片没有宽高属性)。
img{ max-width: 400px; max-height:200px; }失效的原因:
一般,web后台或前台用户在编辑图片时,可能会手动设定img标签的宽高属性。因为img元素标签的属性为最高优先级,所以通过css样式控制的图片最大宽高属性会失效。此时图片的显示会由于img本身的宽高属性决定,因此,图片很可能变形。
解决方法:js控制图片的宽高属性输入或后台过滤,去掉img标签的宽高属性等。
Img未定义宽高属性时,IE7的表现符合web标准;因此,不需要为IE7单独设置样式
IE6不识别max-width,
max-height,需使用hack处理
img{ _width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":true);
_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":true);
}(img缺省宽高属性有效)
img{ _width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":"auto");
_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":"auto");
}(忽略img设定的宽高属性,强制img图片在范围内等比缩放)
综上所叙:
在img图片未设定宽高属性时,可使用样式:
img{max-width:400px;max-height:200px;_width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":"auto");_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":"auto");
或
img{max-width:400px;max-height:200px;_width:expression(this.width>=400&&this.width/400>=this.height/200?"400px":true);_height:expression(this.height>=200&&this.width/400<this.height/200?"200px":true);
实现图片在一定宽高范围内的等比缩放。(需关注的是IE6中css表达式的运行效率)
关于ie6中用js实现图片在范围内等比缩放的控制方法的显示效果差异,未验证待续。
转载地址:http://haitaowang.blog.163.com/blog/static/1280231192012112424314819/
相关文章推荐
- Css设置img属性让图片水平居中/居左/居右的写法
- CSS实现图片超过限定尺寸自动缩放兼容IE和Firefox
- android ImageView 视屏幕情况 使图片在限定范围内进行缩放显示
- javascript在指定宽度和高度范围内最大化等比缩放图片
- \t\t用js控制页面图片等比缩放 css图片等比缩放 比例缩放显示 js 页面 缩放图片 js缩放图片 图片按比例缩放
- 纯CSS无表达式实现图片等比缩放(支持IE7及以上)
- [ php or jsp ] + jquery.imgareaselect 处理图片截图等比缩放!
- CSS_img标签usemap属性图片中选择区域加入超链接
- 纯CSS无表达式实现图片等比缩放(转载)
- CSS_img标签usemap属性图片中选择区域加入超链接
- 纯css实现宽高等比缩放
- Css设置img属性让图片水平居中,居左,居右
- css里img图片vertical-align属性
- Css设置img属性让图片水平居中,居左,居右
- CSS如何让图片垂直并水平居中等比缩放?
- Css设置img属性让图片水平居中/居左/居右的写法
- css html 如何将图片img标签 水平居中 垂直居中 和水平垂直居中,能自适应浏览器缩放。
- [HTML]Css设置img属性让图片水平居中,居左,居右
- css考核点整理(八)-在什么情况下通过img引入图片,什么情况用背景图引入?背景属性有哪些
- 【知识整理】微信小程序-图片在容器中等比缩放至垂直、水平居中,并计算缩放后真实宽高