• 0
ЮрийВеб

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

    Вопрос

    Вопрос по ускорению загрузки сайта для мобильных размеров экрана. 

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

    Так как для мобильного сразу подгружать картинку помельче? Неужели только отдельный CSS-файл для этого делать?

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах

    4 ответа на этот вопрос

    Рекомендуемые сообщения

    • 0
    Igor Schnaider

    Так просто пропишите правила для каждого экрана:

    @media (min-width: 500px) {
      .image {
        background-image: url('./path_to_image/image.jpg?small');
      }
    }
    
    @media (min-width: 700px) {
      .image {
        background-image: url('./path_to_image/image.jpg?medium');
      }
    }
    
    @media (min-width: 900px) {
      .image {
        background-image: url('./path_to_image/image.jpg?large');
      }
    }

     

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    • 0

    Спасибо!

    А при такой записи для экрана width>=1024px не загрузятся ли последовательно все три картинки? Или я что-то затупил... :)

    Вот, кстати, еще решение - http://vavik96.com/kak-sdelat-kartinku-adaptivnoj/

     

    Изменено пользователем ЮрийВеб

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    • 0
    by chris
    @media all and (min-width: 500px) and (max-width: 669px) {
      .image {
        background-image: url('./path_to_image/image.jpg?small');
      }
    }
    
    @media all and (min-width: 700px) and (max-width: 889px) {
      .image {
        background-image: url('./path_to_image/image.jpg?medium');
      }
    }
    
    @media all and (min-width: 900px) {
      .image {
        background-image: url('./path_to_image/image.jpg?large');
      }
    }

     

     

     

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах
    • 0
    Int

    Есть ещё srcset и sizes, но не всех их поддерживают.

    Поделиться сообщением


    Ссылка на сообщение
    Поделиться на других сайтах

    Создайте аккаунт или войдите в него для комментирования

    Вы должны быть пользователем, чтобы оставить комментарий

    Создать аккаунт

    Зарегистрируйтесь для получения аккаунта. Это просто!

    Зарегистрировать аккаунт

    Войти

    Уже зарегистрированы? Войдите здесь.

    Войти сейчас

    • Войти через Facebook
    • Войти через Twitter
    • Войти через Microsoft
    • Войти через LinkedIn
    • Войти через Google

    Карта разработчиков

    Карта участников

    Отметь себя на карте для поиска или предложения работы