手机站和pc站是同一个域名,却用了不同的模板。

发布于 2022-09-01 16:30:07 字数 158 浏览 19 评论 0

大家好,我是个前端菜鸟,最近被一个问题困惑。
我发现有的网站手机站和pc站用的是通一个域名,比如都是链接但是手机站和pc站使用的模板却完全不同。
这是怎么回事呢?是怎么实现的?谢谢啦

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

心房敞 2022-09-08 16:30:07

该网站可以通过判断User Agent类型(是否为手机)而在后端控制要执行的模板文件。比如在 Discuz! 就是这样。

如果不同UA下的HTML结构一样但渲染样式不同,那就是使用了媒体查询了。

白日梦 2022-09-08 16:30:07

分享一篇我的博客中的文章,Nginx配置网站适配PC和手机,相信这篇文章可以解决你的问题:http://xxgblog.com/2015/06/29/nginx-detect-mobile/

主要思路是通过HTTP请求的Header中的User-Agent可以区分客户端类型,具体代码在:http://detectmobilebrowsers.com/
通过Nginx正则表达式判断客户端类型(PC还是手机)后,反向代理到不同的应用,或者展示不同的静态页面。

另外,我还开发了一个简单的游戏玩家社区,即使用上面博文中的思路实现区分手机设备和PC设备,可以尝试一下分别使用PC、手机打开这个网站:http://gw2.vsgames.cn/

西瓜 2022-09-08 16:30:07

比较常规的就是根据屏幕分辨率来展示不同的css样式呀

通过使用@media 来判断是哪个分辨率

洛阳烟雨空心柳 2022-09-08 16:30:07

媒体查询

ゝ杯具 2022-09-08 16:30:07

user-agent

小嗷兮 2022-09-08 16:30:07

服务器端通过user-agent(http报文中关于浏览器的信息)来判断用户是来自什么平台,相应的使用不同的模板来渲染。
如果HTML结构完全一样则是用了 CSS3中的媒体查询@media,来使用不同的样式。(当然也有可能是服务器吐了不同的样式出来。。。。)

穿透光 2022-09-08 16:30:07

有几种方法
1.根据浏览器user-agent判断浏览器是PC版还是移动版并在同一页面调用不同模板
2.首页判断浏览器种类再跳转,我的网站日语翻译就采用了这种方法
3.直接通过样式表提供对不同屏幕的不同样式支持,有现成框架可以用,比如bootstrap

月光色 2022-09-08 16:30:07

我知道的是通过后端程序判断用户代理,跳转到子域名如:m.xxx.com

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文