适用于Mac OS的Firefox和Safari的CSS?

时间:2011-12-16 15:30:30

标签: css

这可能是一个愚蠢的问题,但我有一个场景,我修复了某人的网页,它在我的Windows机器上的所有主要网络浏览器上都很好看。但是,当我将网站上传到Adobe BrowserLab时,当我在OS X上查看Safari和Firefox时,在Windows操作系统上,页脚与Safari和FireFox相差无几。

我的问题是:

  • 有没有办法在OS X上只定位Safari和Firefox,而不是触及Windows上的那些?我的意思是,有没有办法只为OS X创建样式表?
  • 或者是否有针对Mac OS X的条件评论(例如)?如果没有,还有其他方法吗?
  • 或者,我运气不好吗?

谢谢大家!

4 个答案:

答案 0 :(得分:2)

最佳做法:尝试在不进行用户代理检测的情况下修复它。分析问题,您可以尝试在此处询问有关您问题的具体建议。特别是Gecko和WebKit渲染引擎在每个平台上的表现几乎完全相同,错误应该很容易被挤压。

如果你真的无法修复它,你可以进行JS浏览器检测,并动态包含CSS。

但这是一种不好的做法:无论何时进行更改,都需要更改每个浏览器的每个css。

答案 1 :(得分:1)

你可以专门定位浏览器,通常firefox chrome等工作大致相同,即可能稍有不同。

此处描述了一种定位浏览器的方法

http://www.webmonkey.com/2010/02/browser-specific_css_hacks/
 http://reference.sitepoint.com/css/conditionalcomments

答案 2 :(得分:0)

您可以使用JavaScript来定位特定浏览器,也可以使用浏览器的操作系统。

http://www.javascriptkit.com/javatutors/navigator.shtml

答案 3 :(得分:0)

是的,但这很少是正确的方法。我想这是一个字体问题 - 也许你使用的是仅在Windows上的字体,或者OSX版本略有不同的字体。

如果您确实想要这样做,您可以使用服务器端语言(例如,PHP)来检查用户代理,然后包含额外的样式表,或者使用JS来使用相同的技术添加样式。

在研究这个时,应该不惜一切代价避免任何关于CSS黑客的信息。

这是一种很好的方法:http://www.quirksmode.org/js/detect.html因为它可以避免黑客攻击,并生成一个包含相关信息的易用对象。

我只会在可怕的情况下使用这种技术 - 在我做过的所有网站中,除了旧的IE和iOS之外,我从来没有这样做过。