Атрибут srcset тега <source> — набір зображень під екран
Атрибут srcset вказує одну або кілька адрес альтернативних зображень.
Якщо даний атрибут має рядок URL-адреси альтернативного зображення з дескриптором ширини, то в елементі також необхідно вказати атрибут «sizes», значенням якого повинен бути список допустимих розмірів джерела.
Загальний опис
автор: NagarD
- Нотатка
-
Атрибут
автор: с3сsrcsetмає ефект тільки тоді, коли елемент<source>розташовується безпосередньо всередині елемента<picture>.
Синтаксис
<picture>
<source srcset="...">
</picture>
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| 38 | 38 | 9.1 | 25 | 13 | — |
| Переглядач | ||||
|---|---|---|---|---|
| 38 | 38 | 38 | 9.3 |
Приклади
+ запропонувати свій приклад у пісочниці
<h3>Приклад використання атрибуту srcset</h3>
<picture>
<source srcset="data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%27400%27%20height=%27200%27%20viewBox=%270%200%20100%2050%27%20preserveAspectRatio=%27none%27%3E%3Crect%20width=%27100%27%20height=%2750%27%20fill=%27%232a9d8f%27/%3E%3Ctext%20x=%2750%27%20y=%2730%27%20font-family=%27sans-serif%27%20font-size=%2712%27%20text-anchor=%27middle%27%20fill=%27%23fff%27%3Elandscape%3C/text%3E%3C/svg%3E" media="screen and (orientation: landscape)">
<img src="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='200' viewBox='0 0 100 50' preserveAspectRatio='none'%3E%3Crect width='100' height='50' fill='%23264653'/%3E%3Ctext x='50' y='30' font-family='sans-serif' font-size='12' text-anchor='middle' fill='%23fff'%3Ezapasne%3C/text%3E%3C/svg%3E" width="400" height="200" alt="Запасне зображення">
</picture>
HTML
<h4>1. Однаковий srcset, різне місце — вибирає браузер</h4>
<p>Вузьке місце, sizes="100px":</p>
<img class="narrow" alt="Файл, який обрав браузер" srcset="data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='200'%3E%3Crect%20width='400'%20height='200'%20fill='%23c0392b'/%3E%3Ctext%20x='200'%20y='128'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='72'%20text-anchor='middle'%3E400w%3C/text%3E%3C/svg%3E 400w,%20data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='300'%3E%3Crect%20width='1200'%20height='300'%20fill='%231d6fa5'/%3E%3Ctext%20x='600'%20y='205'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='150'%20text-anchor='middle'%3E1200w%3C/text%3E%3C/svg%3E 1200w" sizes="100px" src="data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='200'%3E%3Crect%20width='400'%20height='200'%20fill='%23c0392b'/%3E%3Ctext%20x='200'%20y='128'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='72'%20text-anchor='middle'%3E400w%3C/text%3E%3C/svg%3E">
<p>Широке місце, sizes="640px":</p>
<img class="wide" alt="Файл, який обрав браузер" srcset="data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='200'%3E%3Crect%20width='400'%20height='200'%20fill='%23c0392b'/%3E%3Ctext%20x='200'%20y='128'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='72'%20text-anchor='middle'%3E400w%3C/text%3E%3C/svg%3E 400w,%20data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='300'%3E%3Crect%20width='1200'%20height='300'%20fill='%231d6fa5'/%3E%3Ctext%20x='600'%20y='205'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='150'%20text-anchor='middle'%3E1200w%3C/text%3E%3C/svg%3E 1200w" sizes="640px" src="data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='200'%3E%3Crect%20width='400'%20height='200'%20fill='%23c0392b'/%3E%3Ctext%20x='200'%20y='128'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='72'%20text-anchor='middle'%3E400w%3C/text%3E%3C/svg%3E">
<h4>2. source з media — вибираєте ви</h4>
<p>Рамка ширша за 420px покаже синій файл, вужча — червоний:</p>
<picture>
<source media="(min-width: 420px)" srcset="data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='1200'%20height='300'%3E%3Crect%20width='1200'%20height='300'%20fill='%231d6fa5'/%3E%3Ctext%20x='600'%20y='205'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='150'%20text-anchor='middle'%3E1200w%3C/text%3E%3C/svg%3E">
<img class="wide" alt="Файл, обраний за media" src="data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='400'%20height='200'%3E%3Crect%20width='400'%20height='200'%20fill='%23c0392b'/%3E%3Ctext%20x='200'%20y='128'%20fill='%23ffffff'%20font-family='sans-serif'%20font-size='72'%20text-anchor='middle'%3E400w%3C/text%3E%3C/svg%3E">
</picture>
CSS
h4 { margin: 1.2em 0 .3em; }
p { margin: .3em 0; }
img { display: block; height: auto; border: 1px solid #ccc; }
.narrow { width: 100px; }
.wide { width: 640px; max-width: 100%; }
Коментарі
Коментарів ще немає — будьте першим!