代码之家  ›  专栏  ›  技术社区  ›  BoltBait

手机网站设计

  •  7
  • BoltBait  · 技术社区  · 17 年前

    我刚刚使用样式表(例如@media print等)向网站添加了打印功能,我想知道是否可以使用类似的方法来添加对移动设备的支持。

    如果没有,如何检测移动设备?我的页面是C#(.aspx),我想缩小页面以便于在移动设备上使用。

    编辑:我妻子有一部黑莓手机,所以我想在miminum上启用我们公司的网站。

    6 回复  |  直到 17 年前
        1
  •  7
  •   Nick    17 年前

    我不确定IPhone/iPod Touch在请求样式表时是如何声明自己的,但对于大多数人来说,使用

    <style type="text/css">
        @media handheld
        {
          /* handheld styles */
        }
    </style>
    

    有关介质类型的完整列表,请参阅 here.

        2
  •  2
  •   Nathan Long    17 年前

    移动浏览器是一个真正的大杂烩,无论它们支持什么,是否遵循你的风格上的“媒体”属性,等等。

    我会说目标是 progressive enhancement (这是一系列文章中的一篇)并确保如果浏览器只理解纯HTML,您的内容仍然可以查看,并且顺序正确-例如,您希望您的主要内容显示在代码中的侧边栏之前,因为主要内容更重要。

    A. decent looking resource 在上面的文章中提到了。

        3
  •  2
  •   alex    17 年前

    WURFL ,这是一个相当不错的数据库,如果其他解决方案不起作用,它非常了解设备及其用户代理。

        4
  •  1
  •   Mat Nadrofsky    17 年前

    你可能想看看你拥有的用户代理的类型,看看它是否是一个移动设备。下面的代码就是一个例子:

    public static bool IsMobile(string userAgent)
    {
        userAgent = userAgent.ToLower();
    
        return userAgent.Contains("iphone") |
             userAgent.Contains("ppc") |
             userAgent.Contains("windows ce") |
             userAgent.Contains("blackberry") |
             userAgent.Contains("opera mini") |
             userAgent.Contains("mobile") |
             userAgent.Contains("palm") |
             userAgent.Contains("portable");
    }
    

    这在大多数情况下都应该有效!这 link 可能也会帮助你变得更具体。

        5
  •  0
  •   rgubby    15 年前

    使用web服务检查访问者是否是移动用户,并基于此提供您的输出。在应用程序上使用相同的URL并执行相同的业务逻辑-只需更改应用程序的视图层。

    Wapple Architect是一个很好的选择(http://wapple.net)-它允许您使用一些web服务在服务器级别执行这些检查,然后执行逻辑并添加代码(如果是移动设备)。

        6
  •  0
  •   Namratha    13 年前

    看看这个!很酷! http://mobstac.com/developer/

    MobStac API平台是构建和管理移动站点的最快方式!您可以访问开发人员文档和API密钥。