我正在使用 cordova(phonegap) 和 angularJS 框架在 Xcode 中制作一个非 native iOS 应用程序
我通过使用以下方法区分不同方向的 css 属性:
@media all and (orientation:portrait) { }
和
@media all and (orientation:landscape) { }
在纵向模式下的 Xcode 模拟器中,单击文本字段时,会弹出屏幕键盘。发生这种情况时,它会切换到横向模式的 css,同时仍保持纵向。这显然弄乱了所有格式。
对于为什么会发生这种情况的任何建议,我们将不胜感激。 提前致谢。
最佳答案
要解决此问题,请尝试将方向检查更改为纵横比:
替换
@media screen and (orientation : landscape)
与
@media screen and (min-aspect-ratio: 13/9)
替换
@media screen and (orientation : portrait)
与
@media screen and (max-aspect-ratio: 13/9)
来源:https://www.robinosborne.co.uk/2014/09/12/android-browsers-keyboards-and-media-queries/
关于当 iOS 键盘处于事件状态时,CSS 方向会自动切换为横向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23317427/