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

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

分类:CSS进阶教程_CSS3技术文章 · 发布时间:2023-11-13 10:06 · 阅读:8232

什么是浏览器兼容:当我们使用不同的浏览器(Firefox IE7 IE6)访问同一个网站,或者页面的时候,会出现一些不兼容的问题,在这种浏览器下显示正常,在另一种下就乱了,我们在编写CSS的时候会很恼火,刚修复了这个浏览器的问题,结果另外一个浏览器却出了新问题。

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

一、链接的虚线框问题


复制代码
代码如下:




复制代码
代码如下:

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

二、固定定位


复制代码
代码如下:




复制代码
代码如下:

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

.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


复制代码
代码如下:




复制代码
代码如下:

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


复制代码
代码如下:

// png透明的js解决方案
if (!window.XMLHttpRequest) {
window.attachEvent("onload", enableAlphaImages);
}

function enableAlphaImages(){
for (var i=0; i var obj = document.all[i];
var bg = obj.currentStyle.backgroundImage;
var img = document.images[i];
if (bg && bg.match(/\.png-600/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-600$/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 = "http://ss.0133.cn/b/img/pixel.gif"; //替换透明PNG的图片
} } }

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


复制代码
代码如下:


this is opacity text

this is text that not opacity in ie


复制代码
代码如下:

/* css */
.opacity {
background: #000;
filter:alpha(opacity=50);
*zoom:1; /* sometimes it is needed */
opacity: 0.5;

font-size: 38px;
color:#fff;
}

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


复制代码
代码如下:


red green blue and alpha


复制代码
代码如下:

/* css */
.rgbaAlpha {
width:300px;
height:auto;
padding:50px;
filter:progid:DXImageTransform.Microsoft.gradient(startcolorstr=#7F000000,endcolorstr=#7F000000);
background: rgba(0, 0, 0, 0.5);

font-size: 38px;
color:#fff;
}

标签:
css的兼容问题

相关文章

CSS利用浮动实现多个盒子并排

CSS 中盒子并列是指在同一行或同一列中,将多个盒子按照一定的规则排列在一起的布局方式,本文主要介绍了CSS利用浮动实现多个盒子并排,感兴趣的可以了解一下

浅谈css溢出机制探究

在实际开发的过程中,内容溢出是经常见到的。这篇文章主要介绍了浅谈css溢出机制探究,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

CSS教程:网页文本渐变

注:本文由 Robin 翻译自 webdesignerwall(这个标题不知道该怎么翻译好, 希望大家能提提意见.) 你是否想不用photoshop来创建一个带渐变的标题文字吗? 这里用一个简单的css技巧来向你展示如何仅仅使用css和png图片来制造这种效果. 经测试这种方法适合大多数主流浏览器.当然

CSS取消移动端长按元素背景色的方法

在开发微信小程序的时候,发现有的元素长按之后,出现了讨厌人的背景色,这就很奇怪,就想把它去掉,本文给大家介绍CSS取消移动端长按元素背景色的方法,感兴趣的朋友一起看看吧

CSS 文字溢出:ellipsis在IE上不起效果的解决

设置text-overflow: ellipsis;即可实现文本溢出省略的效果,本文主要介绍了CSS 文字溢出:ellipsis在IE上不起效果的解决,具有一定的参考价值,感兴趣的可以了解一下

返回分类 返回首页