我在CSS文件中定义了以下媒体选择器:
@media screen and (min-width: 600px) and (orientation: landscape),
screen and (orientation: landscape)
这似乎与以下工作正常:
当浏览器窗口调整到一定宽度以下时,桌面版Chrome(在我的情况下为v32)正在从横向切换到potrait。
我的印象是桌面浏览器总是风景......
有没有办法阻止Chrome执行此操作?
答案 0 :(得分:0)
可以通过比较高度和宽度来确定方向。当窗口width
小于其height
时,方向将被视为肖像。
您可以考虑使用deviceorientation
来强制进行准确检测。
此演示说明了当窗口高度高于宽度时,使用CSS方向从landscape
更改为portrait
。
http://demo.hongkiat.com/css-orientation-styles/
答案 1 :(得分:0)
最后,我提出了一种替代解决方案,可以完全从媒体查询中删除orientation
。这当然不是最理想的解决方案,因为我无法应用特定样式的纵向方向,但至少我的页面可用于我目前测试的所有设备(桌面/ iphone / ipad / kindle)。 / p>
在HTML <head>
内:
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
以下选择器的行为完全符合预期,因为上面的元标记似乎考虑了像素密度。因此,我的页面在普通和视网膜设备上看起来都是正确的,同时在Chrome中继续正常运行。
@media screen and (min-width: 600px)