Я хочу показать свой сайт только в альбомной ориентации, возможно ли это? Не имеет значения, в какой ориентации находится устройство в руке, но веб-сайт всегда будет в альбомном режиме. Я видел, как приложение для iPhone работает таким образом, но можно ли это сделать для веб-сайта?
javascript
html
mobile-browser
coure2011
источник
источник
Ответы:
@Golmaal действительно ответил на это, я просто немного более многословен.
<style type="text/css"> #warning-message { display: none; } @media only screen and (orientation:portrait){ #wrapper { display:none; } #warning-message { display:block; } } @media only screen and (orientation:landscape){ #warning-message { display:none; } } </style> .... <div id="wrapper"> <!-- your html for your website --> </div> <div id="warning-message"> this website is only viewable in landscape mode </div>
У вас нет контроля над пользователем, меняющим ориентацию, но вы можете хотя бы отправить им сообщение. Этот пример скроет оболочку в портретном режиме и покажет предупреждающее сообщение, а затем скроет предупреждающее сообщение в альбомном режиме и покажет портрет.
Я не думаю, что этот ответ лучше, чем @Golmaal, это только комплимент ему. Если вам нравится этот ответ, не забудьте отдать должное @Golmaal.
Обновить
В последнее время я много работал с Cordova, и оказалось, что вы МОЖЕТЕ управлять им, если у вас есть доступ к встроенным функциям.
Другое обновление
Так что после выпуска Cordova это действительно ужасно в конце. Если вам нужен JavaScript, лучше использовать что-то вроде React Native. Это действительно потрясающе, и я знаю, что это не чистый Интернет, но чистый веб-опыт на мобильных устройствах не удался.
источник
orientation
свойства условной группы.Хотя я сам ждал здесь ответа, мне интересно, можно ли это сделать с помощью CSS:
@media only screen and (orientation:portrait){ #wrapper {width:1024px} } @media only screen and (orientation:landscape){ #wrapper {width:1024px} }
источник
Попробуйте это Возможно, вам больше подойдет
#container { display:block; } @media only screen and (orientation:portrait){ #container { height: 100vw; -webkit-transform: rotate(90deg); -moz-transform: rotate(90deg); -o-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); } } @media only screen and (orientation:landscape){ #container { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); } }
<div id="container"> <!-- your html for your website --> <H1>This text is always in Landscape Mode</H1> </div>
Это автоматически обеспечит равномерное вращение.
источник
Пришлось поиграть с шириной моих основных контейнеров:
html { @media only screen and (orientation: portrait) and (max-width: 555px) { transform: rotate(90deg); width: calc(155%); .content { width: calc(155%); } } }
источник