有没有办法只检测带有CSS的Android浏览器?

时间:2011-04-24 15:20:28

标签: css webkit mobile-website android-browser

有没有CSS hack只检测Android浏览器来编写CSS?并非所有的WebKit浏览器 - 我想为iPhone和Android浏览器上的某些元素编写不同的CSS。

例如http://paulirish.com/2009/browser-specific-css-hacks/

我想要Android浏览器的CSS黑客。

2 个答案:

答案 0 :(得分:2)

CSS攻击你引用了利用CSS中的漏洞来攻击特定的浏览器(通常很难找到一些与IE 6 /等旧版浏览器一起工作的东西)。 CSS本身不能进行浏览器检测,特别是不能进行OS检测,这正是您所需要的。

我上面评论你的问题(不要这样做!),你可以获取用户代理字符串,它将包含“Android”作为操作系统:

Mozilla/5.0 (Linux; U; Android 1.1; en-gb; dream) AppleWebKit/525.10+ (KHTML, like Gecko) Version/3.0.4 Mobile Safari/523.12.2 – G1 Phone

我不能说这是否100%可靠(虽然每个Android手机应该报告原因),并且没有什么可以阻止这种情况在未来发生变化。您需要在Javascript中执行此检测并让JS为Android添加自定义CSS文件(让它为文档添加另一个样式标记),或者在服务器端编程中执行检测(ASP / PHP)等等,并让它将样式标签回显给您的来源。

答案 1 :(得分:-1)

目前的最佳做法是使用功能检测而不是浏览器/操作系统检测。有一个名为Modernizr的javascript库可以提供帮助。我相信它也有一些技巧,允许非CSS3浏览器处理一些新的CSS3标签,如headerfooter