Все ответы неверны. Когда клавиатура будет показана, Android будет меняться от портрета к пейзажу.
Различные клавиатуры также нуждаются в тестировании, поскольку они могут занимать больше вертикального пространства. Клавиатура Swift занимает больше места в вертикальном пространстве, поэтому вы не можете использовать такие решения, как экран @media и (min-aspect-ratio: 13/9) {/ * пейзажные стили здесь * /}, поскольку это не удастся на многих телефонах.
Единственное решение - использовать javascript.
На новых устройствах Android вы можете протестировать и использовать новое окно window.screen.orientation api.
На iOS вы можете использовать window.orientation, который отлично работает. т.е. Math.abs (window.orientation) === 90 - это пейзаж
И в качестве резервного можно использовать window.screen.width> window.screen.height, который будет охватывать действительно старые Android-устройства, которые не поддерживают новое окно .screen.orientation api
Тогда вам нужно только добавить/удалить класс при изменениях размера/ориентации.
Спасибо! Малый вопрос о последующих действиях: что произойдет, когда кто-то наклонит экран телефона так, чтобы изменилась ориентация? Будет ли примененный CSS-смен? – Keelan
Я не проверял себя, но я уверен, что это так, потому что другие медиа-запросы (такие как ширина экрана) повторно проверяются. – mogelbrod
Хорошо, спасибо за все это! – Keelan