2012-06-17 3 views
0

У меня есть этот медиа-запрос:медиазапросов для настольных экранов и экрана мобильного

@media only screen 
and (max-width : 320px), 

only screen 
and (max-device-width : 320px) 
and (min-device-pixel-ratio : 2), 

only screen 
and (max-device-width : 320px) 
and (-webkit-min-device-pixel-ratio : 2), 

only screen 
and (max-device-width : 320px) { 

Он выбирает браузеры на рабочем столе меньше, чем 320px в ширине, iphone 4-й в портретном, но он также выбирает IPHONE 4-й в ландшафте. Неужели это НЕ должно выбрать iPhone 4 в пейзаже?

С моей точки зрения, первая часть выбирает экраны шириной менее 320 пикселей.

Вторая часть же, как второй, но с префиксом поставщика WebKit

Третья часть выбирает экраны на мобильных устройствах меньше, чем 320px в ширину, но с двойной плотностью пикселей (iPhone 4/4s в данном случае)

и занимает четвертое место часть такая же, как и в предыдущих двух, но без плотности двойного пикселя, поэтому должна выбрать iPhone 3gs и другие мобильные устройства, которые имеют экраны максимальной ширины 320 пикселей. Поэтому, исходя из вышеизложенного, не ожидайте, что он будет выбирать ландшафтный режим на любом iPhone?

Любые идеи, как добавить к нему решение этого?

Neil

+0

вы гораздо больше шансов получить полезные ответы при решении конкретных вопросов, и после появления некоторых исследовательских усилий. обратитесь к [stackoverflow FAQ] (http://stackoverflow.com/faq), чтобы получить дополнительную информацию о ожидаемом формате для размещенных вопросов здесь и соответствующим образом пересмотреть свой вопрос. приветствую вас на борту, кстати, –

+0

Это конкретная проблема, медиа-запрос выбирает iPhone в ландшафте, когда я этого не ожидаю. Я сам написал медиа-запрос, и это проблема, с которой я столкнулся. таким образом, мой вопрос выше. Вторая часть была просто связанным вопросом. Я знаю два способа добиться этого и понять их положительные и отрицательные стороны, но хотел бы, чтобы мысли других народов, конечно, нет ничего плохого в этом? Neil – rctneil

+0

ничего страшного, я просто заявлял, что вы должны разделить это на два вопроса и уточнить, что вы пробовали до сих пор. –

ответ

0

Вы должны добавить orientation : landscape в свой CSS, как это:

@media only screen 
and (max-device-width : 320px) 
and (orientation : landscape) { 
    /* Styles */ 
} 
+0

Итак, iPhone все еще сообщает о своей ширине как 320 пикселей, даже когда он в ландшафте? Если это так, имеет смысл использовать опцию ориентации – rctneil

+0

Я думаю, что «ориентация» сделана для мобильных устройств. Вы не можете использовать его на мониторе вашего компьютера, потому что нет ориентации на портрет! –

+0

Мой совет - попробовать CSS с iPhone. –

Смежные вопросы