CSS решение
Вы можете использовать ориентацию в медиа-запросах.
альбомная правила применяются, когда ширина окна браузера больше высоты:
@media (orientation: landscape) {
...
}
портрет правила применяются, когда высота окна браузера превышает ширину:
@media (orientation: portrait) {
...
}
Примечание. К сожалению, эта функция не поддерживается в Safari.
Вы можете прослушать событие orientationChange
, когда меняется ориентация, и прочитать screen.orientation
, когда вам нужно узнать текущую ориентацию.
screen.addEventListener("orientationchange", function () {
console.log("screen orientation: " + screen.orientation);
});
Другим вариантом будет прослушивание размеров окна и сравнение соотношения ширины и высоты.
if (width/height > 1) { //landscape } else { portrait }
.
Я рекомендую регулировать размер окна слушателя.