2015-05-07 2 views
12

есть ли запрос @media для установки только на устройства, работающие под управлением iOS?CSS-медиа-запрос для целевых только устройств iOS

пример:

@media (min-device-width:320px) and (max-device-width:768px) { 
#nav { 
yada:yada; 
} 
} 

это также изменить поведение страницы на устройствах Android с этой шириной перспективой? или я ошибаюсь с этим последним

+0

все устройства не только IOS – icode03

+0

Почему вам это нужно? Вы можете получить пользовательский агент с javascript, и в зависимости от результата вы можете включить специальный файл css. – webcodecs

+0

http://stackoverflow.com/questions/3839809/detect-iphone-ipad-purely-by-css – Prime

ответ

8

Краткое сообщение № CSS не относится к брендам.

Ниже приведены статьи по применению для iOS с использованием носителей.

https://css-tricks.com/snippets/css/media-queries-for-standard-devices/

http://stephen.io/mediaqueries/

Infact вы можете использовать PHP, JavaScript, чтобы обнаружить браузер IOS и в соответствии с этим вы можете вызвать файл CSS. не Например

http://www.kevinleary.net/php-detect-ios-mobile-users/

5

Как уже упоминалось выше, короткий ответ: нет. Но мне нужно что-то подобное в приложении, над которым я сейчас работаю, но области, где CSS должен быть разным, ограничены очень специфическими областями страницы.

Если вы похожи на меня и не нужно обслуживать совершенно другой таблицы стилей, другой вариант был бы обнаружить устройство под управлением IOS так, как описано в этом вопросе он выбран ответ: Detect if device is iOS

После того как вы «ве обнаружил устройство IOS вы можете добавить класс к области вы таргетирования с помощью Javascript (например, в document.getElementsByTagName("yourElementHere")[0].setAttribute("class", "iOS-device");, JQuery, PHP или любой другой, и стиль, класс, соответственно, используя уже существующую таблицу стилей.

.iOS-device { 
     style-you-want-to-set: yada; 
} 
23

Да, вы можете.

@supports (-webkit-overflow-scrolling: touch) { 
    /* CSS specific to iOS devices */ 
} 

@supports not (-webkit-overflow-scrolling: touch) { 
    /* CSS for other than iOS devices */ 
} 

YMMV.

Это работает, потому что только Safari Mobile реализует его: https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-overflow-scrolling

+1

Очень гладкая идея, хорошо работает на iPod и iPad, спасибо! – TetraDev

+0

Но это также работает на Android, не так ли? – NoobishPro

+0

-webkit-overflow-прокрутка поддерживается только в Safari, см. Https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-overflow-scrolling –

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