2011-03-21 62 views
1

我开发了一个网站,该网站使用媒体查询来支持移动设备,但Windows Mobile 7似乎没有受到影响。我知道IE不支持媒体查询,所以我想在WinMob上它是一样的。有没有办法在这款手机上加载不同的页面?Windows 7手机Web开发问题

回答

2

刚刚获得user agent并检查它是否是Windows Phone 7的(这是三星Focus):

Mozilla/4.0 (compatible: MSIE 7.0; Windows Phone OS 7.0; Trident/3.1; IEMobile/7.0; SAMSUNG; SGH-i917) 

然后重定向到另一页。

+0

Ah OK谢谢。我想我也可以加载我的媒体查询基于CSS文件。明天再试! – 2011-03-22 00:07:00

+0

这是一个好方法。我还发现它是一种更好的方法来查找浏览器是否是IE,而不是看起来很麻烦的<! - [如果IE] - >! – 2011-03-22 10:42:23

0

您可以使用

<!--[IEMobile]> 
<meta name="MobileOptimized" content="width" /> 
<link rel="stylesheet" type="text/css" href="ie-mobile.css"/> 
<![endif]--> 

但更好的将是移动先行设立,看到没有媒体查询为媒体查询可以这么说。用途:

<!--[if (lte IE 8)&!(IEMobile)]> <html lang="en" class="ieLte8"> <![endif]--> 

这样就可以使用选择:.ieLte8做同样的,你会为通过媒体查询中显示。

+0

我发现整个if语句在中被IE浏览器取代为不一致,并且在php中提取用户代理更加可靠! – 2011-03-27 22:35:08

+0

但是,如果我在PHP中使用服务器端,我无法提供缓存页面... – snobojohan 2011-06-07 20:32:12

+0

正确。如果IE浏览器似乎只为我工作,有时使用。不记得我使用的是什么版本的IE,但它不是很一致。 – 2011-06-07 21:10:27