手机如何知道使用不同的页面



我正在Django制作一个网站,但我想制作两个网站,一个用于手机,一个为电脑。

你如何指示手机加载我的手机友好页面而不是普通网站?

通过使用前端响应框架(如Bootstrap或Funding),您可以为多个屏幕创建一个Django项目。

我不了解Django,但我认为您可以通过将其添加到<head>部分中来实现这一点

<script type="text/javascript">
  <!--
  if (screen.width <= 800) {
    window.location = "http://m.domain.com";
  }
  //-->
</script>

最简单的方法是包含django移动包。比试图保留自己的用户代理列表来响应要容易得多。https://pypi.python.org/pypi/django-mobile

通常,您不会为移动设备提供不同的站点。相反,您可以使用CSS技术(如@media查询)根据浏览器的大小更改页面的布局。

这被称为"响应式网页设计"(如果这能让搜索变得更容易的话),其优点是不需要维护同一页面的多个副本,只需要针对不同的设备。此外,通过应用基于屏幕大小(而不是设备用户代理)的规则,当用户更改窗口大小时,您可以更改页面的布局,比如在桌面上并排捕捉窗口,或者在手机上从横向切换到纵向。而且,只需调整浏览器大小,您就可以在不同的大小下测试您的网站——在大多数布局测试中,无需重新加载甚至使用Chrome设备模拟器。

通过使用Bootstrap这样的框架,您甚至可以在不真正了解CSS的情况下使用响应式web设计。

User-Agent、显示大小等。例如:

 if ($http_user_agent ~* '(blackberry|blazer|danger|ericsson|
        Googles+Wirelesss+Transcoder|htc|iemobile|ipaq|iphone|ipod|lg|mobile|
        mot|moto|motorola|nec-|netfront|netfront|nokia|operas+mini|palm|
        palmsource|panasonic|philips|pocketpc|samsung|sanyo|sec|sharp|sie-|
        smartphone|sony|symbian|t-mobile|untrusted|up.browser|up.link|
        vodafone/|wap1.|wap2.|webOS|windowss+ce)') {
      set $mobile on;
    }

取自此处:

最新更新