Могу ли я использовать медиа-запрос во внутреннем CSS и избежать загрузки фоновых изображений, которые я определяю? - программирование
Подтвердить что ты не робот

Могу ли я использовать медиа-запрос во внутреннем CSS и избежать загрузки фоновых изображений, которые я определяю?

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

Единственный способ, которым я могу это сделать, - иметь встроенный CSS в начале страницы, например:

<style type="text/css">
    @media only screen and (min-width: 680px) {
        .hero-image { background-image: url(../images/image.jpg); }
    }
</style>

Во-первых, могу ли я использовать медиа-запросы в встроенном CSS?

Во-вторых, это позволит избежать загрузки изображения на мобильные телефоны?

В-третьих, есть ли лучший способ?

Спасибо

4b9b3361

Ответ 1

Да, вы можете использовать медиа-запросы в теге <style>. Изображение загружается только в том случае, если CSS требует его, поэтому, если ничего не соответствует селектору, он не будет загружать изображение.

Возможно, было бы лучше включить медиа-запрос в ваш внешний файл CSS. Там нет причин включать его inlline.

Ответ 3

Возможно, вам повезет с двухступенчатым медиа-запросом, который начинается в CSS, но заканчивается в jQuery. Обозначьте свои div с идентификатором, чтобы jQuery мог их найти. Процесс подробно объясняется здесь: http://www.fourfront.us/blog/jquery-window-width-and-media-queries