Как правильно реализовать Lazy-loading для <picture />

90
30 августа 2021, 01:10

Использую тэг <picture /> для реализации fallback-механизма для WebP-изображений:

<picture>
    <source srcset="//pics.avs.io/210/50/SU@2x.webp" type="image/webp" />
    <img src="//pics.avs.io/210/50/SU@2x.png" alt="Aeroflot" title="Aeroflot" />
</picture>

Браузер в первую очередь пытается загрузить то, что находится в <source /> и если встречает неподдерживаемый формат image/webp, то загружает то, что находится в атрибуте src тэга <img />

Теперь я хочу сделать Lazyload таких изображений с помощью Intersection Observer API. Когда я заменяю атрибут src на data-src в тэге <img /> то загружается изображение из тэга <source />. Как мне правильно реализовать Lazyload изображений не сломав при этом разметку? Хочу, чтобы это работало правильно и не вызывало вопросов у HTML-валидаторов (страница должна проходить тесты на The W3C Markup Validation Service)

READ ALSO
Автономный таймер 60 дней

Автономный таймер 60 дней

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

85
Запрос к бд с CASE в C#

Запрос к бд с CASE в C#

Пытаюсь выгрузить данные из бд, но не работает оператор CASE, выдает вместо данных пустые ячейкиВ SQLiteStudio все правильно выгружает при данном...

82
Не получается разделить строки

Не получается разделить строки

Результат который хочу я:

196
Проблема с добавлением рекламы от Unity Ads

Проблема с добавлением рекламы от Unity Ads

Вроде бы все очень просто с Unity Ads, скачал плагин, вставил пару строк в код и все, но при тесте в PlayMode не показывается реклама, хотя ошибок в коде...

103