Подтвердить что ты не робот

Объединение запросов в формате CSS

Я хочу отобразить один и тот же набор стилей CSS для людей, печатающих страницу (media = print) и людей, просматривающих мобильный телефон. Есть ли способ объединить CSS-запросы?

Что-то вроде

@media only print or @media only screen and (max-device-width: 480px) {

     #container {
         width: 480px;
     }
} 
4b9b3361

Ответ 1

Разделите их запятой:

@media only print, only screen and (max-device-width: 480px)

См. спецификацию, в частности пример VI (выделено мной):

Несколько медиа-запросов могут быть объединены в список медиа-запросов. список медиа-запросов, разделенных запятыми. Если один или несколько носителей запросы в списке, разделенном запятыми, верны, весь список верен, и в противном случае ложь. В синтаксисе медиа-запросов запятая выражает логическое ИЛИ, в то время как "и ключевое слово выражает логическое И.

Я сомневаюсь, что требуется вторая only, поэтому вы, вероятно, можете сделать:

@media only print, screen and (max-device-width: 480px)

Ответ 2

Из https://developer.mozilla.org/en/CSS/Media_queries

Вы можете комбинировать несколько мультимедийных запросов в списке, разделенном запятыми; если любой из медиа-запросов в списке является истинным, связанный стиль лист применяется. Это эквивалент логической операции "или".

Вам просто нужно удалить второй @media и добавить некоторые скобки.