怎样单独为Chrome、FireFox、Safari、Opera等主流浏览器单独定义CSS样式

html-css013

怎样单独为Chrome、FireFox、Safari、Opera等主流浏览器单独定义CSS样式,第1张

<script>

var 用户代理 = navigator.userAgent.toLowerCase()

var 浏览器

var 浏览器版本 = {}

(浏览器 = 用户代理.match(/msie ([\d.]+)/)) ? 浏览器版本.ie = 浏览器[1] :

(浏览器 = 用户代理.match(/firefox\/([\d.]+)/)) ? 浏览器版本.firefox = 浏览器[1] :

(浏览器 = 用户代理.match(/chrome\/([\d.]+)/)) ? 浏览器版本.chrome = 浏览器[1] :

(浏览器 = 用户代理.match(/opera.([\d.]+)/)) ? 浏览器版本.opera = 浏览器[1] :

(浏览器 = 用户代理.match(/version\/([\d.]+).*safari/)) ? 浏览器版本.safari = 浏览器[1] : 0

if (浏览器版本.ie) document.write('<style>CSS在这里</style>')

if (浏览器版本.firefox) document.write('<style>CSS在这里</style>')

if (浏览器版本.chrome) document.write('<style>CSS在这里</style>')

if (浏览器版本.opera) document.write('<style>CSS在这里</style>')

if (浏览器版本.safari) document.write('<style>CSS在这里</style>')

</script>

变量用的中文,你应该看得懂,不懂再问我

既然网页设计,当然是没做出来点东西都要在各大主要浏览器上测试兼容性啊。

谷歌和ie的任何一个版本都不一样,我觉得它跟符合规则,比ie感觉好(和ie9差不多)。

还有就是不同浏览器的默写默认是不一样的。所以一般会在最上边

加上 body,div,p,span,th,td,tr,{margin:0padding:0}啊之类清楚默认的语句,是个浏览器统一化。

但是还是会有些特别讨厌的 默认清除不了,比如ie6的兼容不知道你做过没。简直会让人骂爹。这时候只能用只有ie6认识代码。

想要更兼容,网页设计的尽量简单,嵌套少点,浮动少点,没用的东西少点。

个人经验之谈。

目前从 Can I use 上获取的信息显示除了 Edge 外主流浏览器的最新版都已经支持这个特性了,随后微软最新确认,EdgeHTML 15.15061中已经增加了对CSS自定义属性的支持!

拓展:

CSS变量:也称作“自定义属性”;CSS 自定义属性是可以级联的:每一个自定义属性可以多次出现,并且变量的值将会借助级联算法和自定义属性值运算出来。