0

如果用户使用小于 1024x600 的分辨率,我希望它能够将他们重定向到我网站的移动版本。现在我正在使用 JQuery 这样做,如果分辨率小于 1024x600,它将被重定向到移动版本。我担心这是否是一个好习惯(使用脚本重定向),如果它现在是你的建议(因为据我所知 PHP 无法检测浏览器分辨率)?

任何建议将不胜感激,谢谢。

PS。我正在使用一个全高网站,它在 1024x600 或更大的分辨率下看起来不错,但在较小的网站上却不行,所以我制作了移动版本以提供全高网站和移动支持。我不想使用浏览器检测,因为我希望具有大分辨率的移动设备访问标准网站。

编辑:我被传下来了一个全高单页水平站点的设计,我很难让它响应(如果内容是流畅的,那么它不会是全高的,没有垂直滚动)所以我做了一个手机版。

4

3 回答 3

4

根据某些情况重定向到另一个页面绝对没问题。但是还有一些其他更好的方法可以做到这一点。

要解决您的问题,请了解布局类型

流体布局最适合您的要求。理想情况下,您应该为各种视口使用相同的样式表集。

看看jQuery mobile的网站。尝试更改您的浏览器窗口大小并查看内容如何自动“适合”您的窗口。你必须做同样的事情。:)

它是一个流畅的布局。:)

PS:我建议不要使用 CSS 媒体查询。当然,它们会让你的生活更轻松,但如果你想真正提高你的技能,只要 CSS 还在,试着用最少的高级特性来构建你的东西​​。

于 2012-08-29T05:55:06.293 回答
1

最好的做法可能是使用 CSS 媒体查询来根据用户的屏幕尺寸提供不同的 CSS,除非您的移动网站和桌面网站完全不同。

没错,PHP 无法确定最终用户的屏幕尺寸。

于 2012-08-29T05:48:36.120 回答
0

最简洁的设计是您从服务器获取一组 HTML/JS/CSS,然后页面使用 CSS 媒体查询和/或 javascript 的某种组合来适应可用的屏幕尺寸。

如果你不能这样做,或者如果你有其他原因想要从服务器获取不同的 HTML,那么最好找到一种方法来避免客户端重定向,因为那些额外的往返是不可取的(尤其是在移动的)。

一些网站在浏览器中设置了一个带有屏幕分辨率的cookie,除了第一次访问该网站外,服务器可以在呈现网站之前看到cookie中的屏幕分辨率,您可以避免客户端重定向并可以根据 cookie 中的分辨率呈现所需的页面。

对于第一次访问(当 cookie 尚未设置时),您执行客户端重定向并设置 cookie。

然后,如果用户更改他们的屏幕分辨率(这种情况并不经常发生),您还必须修改该 cookie。

于 2012-08-29T05:53:28.333 回答