确定移动浏览器是否支持CSS和javascript

确定移动浏览器是否支持CSS和javascript,css,browser,redirect,mobile,Css,Browser,Redirect,Mobile,我正在设计一个移动网站,基本上我想要两个版本。一个是javascript和css密集型的,另一个是老式手机。非常简单的xhtml 是否可以根据浏览器的功能自动重定向?如果构建正确,那么同一个XHTML站点应该支持这两个版本。 尽管如此,我看到了几种可能性: 检查用户代理以确定 浏览器类型 在强化版JS上使用noscript标记,并带有指向简单站点的链接 在简单的XHTML站点上使用JS重定向到密集型JS版本(在SEO方面不是很好) 下载一个简短的html文件,该文件的元刷新设置为1秒,其中还包含

我正在设计一个移动网站,基本上我想要两个版本。一个是javascript和css密集型的,另一个是老式手机。非常简单的xhtml


是否可以根据浏览器的功能自动重定向?

如果构建正确,那么同一个XHTML站点应该支持这两个版本。
尽管如此,我看到了几种可能性:

  • 检查用户代理以确定 浏览器类型
  • 在强化版JS上使用noscript标记,并带有指向简单站点的链接
  • 在简单的XHTML站点上使用JS重定向到密集型JS版本(在SEO方面不是很好)

  • 下载一个简短的html文件,该文件的元刷新设置为1秒,其中还包含javascript。如果javascript启动,它会立即更改元数据刷新的url

    这是一个穷人的概念,因为旧手机的连接速度较慢,所以下载两次web应用程序是一个糟糕的设计

    理想情况下,您应该让他们下载非js版本,但is中有脚本标记,因此它还将下载至少一个javascript文件,这将使用不引人注目的javascript更改原始页面

    但是,因为我认为这是一个糟糕的设计,所以我建议使用元刷新,在下载之间有一个非常小的停顿,让javascript有时间来修复它

    您还可以通过检查某些对象(例如
    )的存在并基于对正确url的更改来检查javascript的版本

    看一看,“一个与无线设备捕获能力和偏好信息有关的规范。内容提供商可以使用这些信息为特定设备生成适当格式的内容。”(引自Wikipedia页面。)

    另一个有趣的是,一个开源的“XML配置文件,其中包含有关许多移动设备的功能和特性的信息”。您可能还想阅读以下内容:


    是一个流行的商业解决方案,声称比WURFL更全面(它包括所有WURFL数据等)。请参阅:。

    您可能不希望站点有两个不同的版本。更好的办法是逐步增强你的简单体验,用它来决定什么时候做那些花哨的事情。也就是说,如果浏览器不支持CSS规则,CSS规则通常会自动降级

    .background-gradient {
      background-color: #333; 
      background-image: url(some_image.png); /*older browsers simply get the bg image*/
      background-image: -webkit-linear-gradient(top, #333333, #eeeeee); 
      background-image: -moz-linear-gradient(top, #333333, #eeeeee);
      background-image: -ms-linear-gradient(top, #333333, #eeeeee);
      background-image: -o-linear-gradient(top, #333333, #eeeeee);
      background-image: linear-gradient(top, #333333, #eeeeee);
    }
    

    WURFL是最好的选择,它是开源的,主要用于移动web应用程序。如果您使用.net,请查看此处讨论的移动浏览器定义文件