为不同的浏览器加载不同的CSS是一种很好的技术吗?

时间:2010-02-11 10:18:13

标签: css browser

我设计了很多网页模板。但是(除了我的第一个)我从未使用过浏览器检测脚本来加载相应的CSS。

我不确定这是一种好的技术,还是只是一种替代方式(为了满足所有浏览器而难以使用单一的CSS)?

4 个答案:

答案 0 :(得分:5)

最常见的人在Internet Explorer中使用条件注释为IE加载单独的样式表,为所有其他人加载默认样式表。

有关MSDN

的更多信息

答案 1 :(得分:5)

这取决于您的布局有多复杂。

总体而言,某些浏览器存在一组“问题功能”,例如浏览器未遵循边框模型并错误地指定边距,边框和填充值。

许多设计不会受到问题的影响,并且在所有浏览器中看起来都非常相似,但如果您的设计中有一部分在其中一个问题上有触点,则最好提取“修复”进入一个单独的样式表,而不是用黑客污染你的标准CSS。

你应该发现你有

1符合标准的浏览器的样式表

1样式表可以解决与他人的任何问题

如果你有更多,那么你就会给自己制造麻烦,并且会增加页面的http请求数量。

答案 2 :(得分:2)

最好的选择是使用与每个(主要)浏览器兼容的css。 所以问题是;你真的需要特定于浏览器的CSS吗?

如果你真的需要它;你可以使用:

<!--[if IE 7]> <link rel="stylesheet" ....> <![endif]-->

答案 3 :(得分:1)

根据我的经验,我总是尽量避免陷入特定的浏览器CSS陷阱。尝试使用CSS-reset-methods以及针对已定义的一组当前浏览器的全新开始构建。我宁愿尝试对设计的布局进行一些改动以使其工作,因为这样可以节省很多时间(如果在项目中可能或设计师合作的话)。

另一个有意义的方面是像Andy Clarke在他的好书(网站http://www.transcendingcss.com/)中谈到的那样。使用最新的标签和所有选项,使您的代码和CSS更简单,更短,更具语义 - 即使它导致明显不同的外观和感觉,例如, Firefox和IE浏览器。

相关问题