为不同的浏览器载入不同CSS的二种方法
点击次数:26 次 发布日期:2008-11-21 11:45:39 作者:源代码网
|
源代码网推荐源代码网整理以下 由于各浏览器(IE、gecko、opera......)对CSS的渲染方式都有所不同,造成显示效果不同,所以可通过对其载入不同CSS的方法来解决,下面介绍下二种方法来实现,不一定很实用,难的玩一把。
源代码网整理以下 纯CSS方式
源代码网整理以下 Code
.box{
width: 20em;
height:20em;
background: #369;
}
/*--gecko内核--*/
@media all and (min-width: 0px){
box{
background: #CC0000;
}
}
/*--opera hacks--*/
/*--不能通过W3C CSS检验--*/
<!--[if IE ]><style>
.box{ background: #808080;
}
</style><![endif]-->
源代码网整理以下 以上代码运行的结果,在IE中是灰色,Opera中是紫红,Firefox中是蓝色
源代码网整理以下 在IE7以前版本还可采用CSS2的属性选择符来区别,不幸的是IE7开始已能识别。
源代码网整理以下 本文章由forestgan于15-Oct-2006发表
源代码网整理以下 javascript的方法
源代码网整理以下 var css_browser_selector = function() {
var
ua = navigator.userAgent.toLowerCase(),
is = function(t){ return ua.indexOf(t) != -1; },
h = document.getElementsByTagName("html")[0],
b = (!(/opera|webtv/i.test(ua)) && /msie (d)/.test(ua)) ? ((is("mac") ? "ieMac " : "") + "ie ie" + RegExp.$1)
: is("gecko/") ? "gecko" : is("opera") ? "opera" : is("konqueror") ? "konqueror" : is("applewebkit/") ? "webkit safari" : is("mozilla/") ? "gecko" : "",
os = (is("x11") || is("linux")) ? " linux" : is("mac") ? " mac" : is("win") ? " win" : "";
var c = b+os+" js";
h.className += h.className?" "+c:c;
}();
源代码网整理以下 此脚本能区别更多的浏览器,具体使用方法可看脚本原作者网站。 源代码网供稿. |