css图片缩放 Ann给了我几个解决的方案:1.文件,找到
为了使图片不是真,需要进行图片的等比例缩放。
之前在网站上发现所有浏览器都没问题,唯独ie8出现这个问题,因为之前的系统win8无法安装ie8,没有测试环境以至于这个问题存在了很长时间。今天在另一个哥们的电脑上把ie6升级到ie8,经过反复的测试,最终发现解决方法。 “打开所用主题的style.css文件,找到.post-content img{,如果没有的话直接添加,在后面加上如下代码:
1
2
3
max-width:600px; width: expression(this.width > 600 ? "600px" : true); height:auto;
这里的.post-content img{不是固定的css图片缩放,不同的主题可能不同。
max-width: 600px: 代码中的这个部分针对Firefox/Opera浏览器,限制对象的最大宽度为600px。此代码对IE无用,为了让IE也能限制对象宽度,所以在代码中加入第2行代码,用IE提供的expression命令,使所有图片的宽度自动缩小或放大至600px。”
在我的博客使用旧模板时,这种方法一直工作得很好,在各主流浏览器下均能实现图片的等比例缩放。然而在更换了模板之后,同样的方法,却无法在IE8中实现同样的效果。在IE8中css图片缩放,图片仅是宽度被缩放了,而高度仍旧不变,显得非常难看。
对于这个问题,Ann给了我几个解决的方案:
1. 在head中增加meta标签如下
1
2.css样式改成:
a img.aligncenter {
display:block;
margin-left:auto;
margin-right:auto;
max-width:700px;
_width:expression(this.width
}
3. 或者在问题页面+
function changimgsize(){
var imgs = document.getElementById("page").getElementsByTagName("img");
var imgwidth=600;
for(i=0; i
if(imgs[i].width>imgwidth){
var oW = imgs[i].width;
var oH = imgs[i].height;
var rate = oH/oW;
imgs[i].width = imgwidth;
imgs[i].height = imgwidth*rate;
}
}
}
window.οnlοad=changimgsize;
通过对比,发现旧模板正是比新模板多了一个如第一方案中的meta标签,在header.php中加入此标签,问题解决。至于方案二和方案三,未做测试,不知可行与否。
补充:对于 IE 8,如果不使用加 meta 标签的方法,那么就需要在第一个 CSS 样式中补充一个“width:auto;”,才能正常实现限制最大宽度的图片等比例缩放,即:
width:auto;
max-width:600px;
width: expression(this.width > 600 ? "600px" : true);
height:auto;
但是这样一来,浏览器可能会无视 img 标签中设置的尺寸。
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
最新评论
Z.
11月29日
博主你好,Deng插件,这个点击不进去,提示这个(Warning: require_once(/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php): failed to open stream: No such file or directory in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26
Fatal error: require_once(): Failed opening required '/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php' (include_path='.:/www/server/php/72/lib/php') in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26)
点都德
3天前
:喷::喜欢::怒::黑线: