2015-04-05 164 views
0

我已经花了几天的时间把我的头发掏出来寻找一个ipad媒体查询与UIwebview的解决方案。 我试过设备宽高比,不同的最小/最大宽度或设备宽度。 在Xcode中,模拟器或我的Ipad似乎充当了Iphone。 加载到我的域中的网页在iPad上正确运行。xcode和ipad媒体查询

看来,问题来自Xcode的

我在HTML页面

的CSS有

<meta name="viewport" content="width=device-width "> 

@media all 
and (max-width: 667px) 
{ 
body::before{ content: "phone fired"} 
h1{ 
color: #F0F; 
} 
} 

@media all 
and (min-width: 768px) 
and (max-width: 1024px) 
{ 
body::before{ content: "ipad fired"} 
h1{ 
color: #F0F; 
} 
} 

如果我拿出最小宽度:来自css的768px,Iphone和Ipad显示Ipad被解雇,因为Iphone在1024px之内; 与最小宽度:768px到位Iphone的行为正常,但Ipad显示“手机触发”。它的行为就好像它的宽度小于768px

+0

尝试使用WURFL可能会检测到iPhone/iPad并为其运行单独的代码。 [wurfl.js](http://web.wurfl.io) – Downgoat 2015-04-05 16:35:35

+0

D4Rk的回答命中了它。我的目标设备是iPhone,所以一切都像iPhone一样。 – cpmac 2015-04-06 17:24:31

回答

1
  1. 什么是您的定位设备?

    • 检查Target设置=>General =>Devices

    如果你的目标iPhone只,应用程序在iPhone mode在iPad上运行,你不会得到一个不同的device size这里。因此,您需要选择Universal,以便本机定位两者。

    这为我做的伎俩在我的测试项目:-)

  2. 你也应该瞄准屏幕时使用@media only screen。这可能不是问题,但它在某种程度上更加正确。

  3. 在检查设备时应该使用min-device-width而不是min-width

让我知道如果这对你没有帮助。然后我会看看更多的东西。

+0

当你知道如何时很容易。那didi它。谢谢。 – cpmac 2015-04-05 20:29:57

+0

不客气..会很感激,如果你愿意接受我的回答。 :-) – d4Rk 2015-04-06 08:02:58

+0

'device-width','device-height','min-device-width','min-device-height','max-device-width'和'max-device-height'都已被贬低,有利于宽度,高度,最小宽度,最小高度,最大宽度和最大高度。折旧表达式在某些浏览器和某些设备上可能仍然有效,但不鼓励使用这些表达式。 [https://developer.mozilla.org/en-US/docs/Web/CSS/Media_Queries/Using_media_queries] – 2016-11-24 00:31:20