各种浏览器下常见css的兼容问题集锦

所属分类: 网页制作 / CSS 阅读数: 186
收藏 0 赞 0 分享

下面我们来处理几个常见的CSS兼容性问题

一、链接的虚线框问题


复制代码
代码如下:

<!-- html -->
<a class="noDashedBox" href="#"><img src="image/201406/20140603152217.png" /></a>


复制代码
代码如下:

/*
* a, img, input等标签点击时会带有虚线框
* 去除它
*/
.noDashedBox {
outline:0;
blr:expression(this.onFocus=this.blur());
}

二、固定定位


复制代码
代码如下:

<!-- html -->
<a class="fixedTop" href="#"><img src="image/201406/20140603152217.png" /></a></p> <p><a class="fixedBottom" href="#"><img src="mage/201406/20140603152217.png" /></a>


复制代码
代码如下:

/* css */
.fixedTop {
position:fixed;
top:100px;
left:50%;
margin-left:500px;
_position:absolute;
_top:expression(eval(document.documentElement.scrollTop + 100));
}</p> <p>.fixedBottom {
position:fixed;
bottom:50px;
left:50%;
margin-left:500px;
_position:absolute;
_top:expression(eval(document.documentElement.scrollTop + document.documentElement.clientHeight - 70));
}

三、png背景图片透明:for ie6


复制代码
代码如下:

<!-- html -->
<div class="pngOpacity"></div>


复制代码
代码如下:

/*
*
* ie6 png8 background 不能定位
*/
.pngOpacity {
height:228px;
background:url(image/png_test.png) no-repeat;
_background:none;
_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true', sizingMethod='crop', src='image/png_test.png');
}


复制代码
代码如下:

// png透明的js解决方案
if (!window.XMLHttpRequest) {
window.attachEvent("onload", enableAlphaImages);
}</p> <p>function enableAlphaImages(){
for (var i=0; i<document.all.length; i++){
var obj = document.all[i];
var bg = obj.currentStyle.backgroundImage;
var img = document.images[i];
if (bg && bg.match(/\.png/i) != null) {
var img = bg.substring(5,bg.length-2);
var offset = obj.style["background-position"];
obj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+img+"', sizingMethod='crop')";
obj.style.background = "none";
} else if (img && img.src.match(/\.png$/i) != null) {
var src = img.src;
img.style.width = img.width + "px";
img.style.height = img.height + "px";
img.style.filter ="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+src+"', sizingMethod='crop')"
img.src = "<a href="http://img.jb51.net/b/img/pixel.gif">http://img.jb51.net/b/img/pixel.gif</a>"; //替换透明PNG的图片
} } }

四、opacity透明:整个元素透明,包括元素里面的内容


复制代码
代码如下:

<!-- html -->
<div class="opacity"><span style="color:yellow;">this is opacity text</span></div></p> <p><div class="opacity"><span style="color:yellow;position:relative;">this is text that not opacity in ie</span></div>


复制代码
代码如下:

/* css */
.opacity {
background: #000;
filter:alpha(opacity=50);
*zoom:1; /* sometimes it is needed */
opacity: 0.5;</p> <p> font-size: 38px;
color:#fff;
}

五、rgba透明:只对背景透明,内容不会受到影响


复制代码
代码如下:

<!-- html -->
<div class="rgbaAlpha">red green blue and alpha</div>


复制代码
代码如下:

/* css */
.rgbaAlpha {
width:300px;
height:auto;
padding:50px;
filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000,endcolorstr=#7F000000);
background: rgba(0, 0, 0, 0.5);</p> <p> font-size: 38px;
color:#fff;
}

更多精彩内容其他人还在看

CSS样式分离之再分离达到精简与重用

无论是CSS的分离还是js的分离,其主要作用之一就是精简与重用,CSS本身就代表着精简与重用,CSS样式分离,我一般指的是“以单独的CSS文件将CSS样式分离出来”,此处的重用多针对不同页面的重用,就是说,一个样式文件,可以多个页面使用,这对于一些公共样式的重构是很有
收藏 0 赞 0 分享

CSS属性behavior的语法使用说明

在进行CSS网页布局的时候,我们经遇到刷新要保留表单里内容的时候,习惯的做法使用cookie,但是那样做实在是很麻烦,css中的behavior就为我们很好的解决了这个问题。今天jb51.net就向大家介绍CSS属性behavior的语法
收藏 0 赞 0 分享

网页制作中的水平居中和垂直居中解决方法集合

 在定义网页的CSS样式的时候,我们或许并不怎么用到垂直居中。
收藏 0 赞 0 分享

最常见IE的Bug及其fix修复方法

Internet Explorer – Web程序员的毒药。在IE上开发时间中有超过60%的时间是花在和IE的bug进行搏斗,让你的开发生产率严重下降。下面是一个教程,告诉你9个IE上最常见的BUG以及如何解决它们。
收藏 0 赞 0 分享

CSS常用浏览器兼容调整小结

用CSS+DIV来写网站代码的好处显而易见,这里不多说了,但由于不同浏览器对CSS的解释不统一,造成不同浏览器下页面错位的现象十分常见……
收藏 0 赞 0 分享

css firefox火狐浏览器下的兼容性问题

css firefox火狐浏览器下的兼容性问题
收藏 0 赞 0 分享

DIV+CSS 浏览器兼容性小结

在网站设计的时候,应该注意css样式兼容不同浏览器问题,特别是对完全使用DIV CSS设计的网,就应该更注意IE6 IE7 FF对CSS样式的兼容,不然,你的网乱可能出去不想出现的效果!
收藏 0 赞 0 分享

div+css 布局常识 8问

CSSer与其他IT职位一样,在找工作的时候,都会面临着面试官提出的问题,或者给出的试卷。今天jb51.net收集了常见的8条面试题目,希望对您有所帮助。
收藏 0 赞 0 分享

CSS用四种方式实现布局

CSS用四种方式实现布局
收藏 0 赞 0 分享

css 解决表格边框不显示的问题

在 IE6 中,当表格单元格中的数据为空时,边框是不显示的,在IE8中是会显示的,怎样解决这个不兼容的问题呢。
收藏 0 赞 0 分享
查看更多