2014-10-12 79 views
0

我有一个ASP.NET Web窗体网站,有CSS代码来检测屏幕宽度是否小于420像素。客户端现在希望这个版本(420像素以下)的功能与全屏网站的功能完全不同,所以我想通过在服务器端检测浏览器的宽度,我可以重定向到移动版本的网站。我使用51Degrees来检查Request.Browser.ScreenPixelsWidth,但即使在我的手机上,它始终返回相同的值。有没有更好的方法来检测这些信息,以便我可以加载我的网页的移动版本?响应式设计为1 ASP.NET网页 - 检测屏幕宽度

回答

0

如果你想获得设备宽度,user-agent是不是很有帮助,因为最终你需要屏幕分辨率,这将成为管理用户界面的唯一标准。因此,当更多设备进入市场时,您需要存储他们的用户代理和维度,这样,我说它没有帮助。而如果用户使用手机或平板电脑,并改变方向,意味着尺寸刚刚改变为相同的user-agent

所以最好的方法是与css media查询开始。有很多CSS可以帮助您响应设计,例如bootstrap

+0

谢谢。我们已经有了CSS媒体查询,但是现在我们需要根据屏幕大小来确定哪些数据需要提取,所以我认为我们的服务器端会更好。 – skaz 2014-10-12 15:38:59

+0

因此,如果你的观点是为不同的设备大小获取不同的数据/内容,那么你必须去服务器端的代码。我在想,你的意思是与响应式设计相同的内容! – 2014-10-12 15:41:47

0

你在混合两种不同的技术。对于响应式设计,您永远不需要使用浏览器代理嗅探。使用像Bootstrap这样的RWD CSS框架。借助RWD,您可以为所有设备提供相同的内容和功能。

这真的听起来像是开发一个单独的移动应用程序的一个参数,如果有一部分需要不同的功能。除此之外,客户端是一个白痴,它经常是我们的工作,教育客户;-)