我正在使用适用于iOS和Android的Cordova开发应用。我正在使用CSS @media查询来处理不同的方向,但它们只在iOS中工作。我的CSS片段如下:
.product-bar-layer {
background-color: blue;
}
@media screen and (orientation: portrait) {
.product-bar-layer {
background-color: red;
}
}
@media screen and (orientation: portrait) {
.product-bar-layer {
background-color: green;
}
}
如果设备在iOS中处于纵向方向,则相关的div为绿色,但在Android上的情况相同则为蓝色。设备旋转时iOS会切换为红色,但在Android上它仍为蓝色。我注意到window.orientation总是在Android中返回0但在iOS上返回90的倍数,正如预期的那样。我已经能够在JS中通过编写一个自定义的getOrientation()函数来解决它,该函数查看window.width()和window.height(),它返回正确的值,但我不能在CSS中做类似的技巧。我该怎么做才能让它发挥作用?