decoding

Атрибут decoding (декодування, розшифрування), дійсний на елементах <image>, дає браузеру підказку щодо того, чи повинен він виконувати декодування зображення при візуалізації іншого вмісту в одному кроці відображення, що виглядає більш "правильно" (sync), чи візуалізувати та відображати інший вміст спочатку, а потім декодувати зображення і відобразити його пізніше (async). На практиці async означає, що наступне малювання не чекає, поки зображення декодується.

Нерідко складно помітити який-небудь суттєвий ефект, коли decoding використовується на статичних елементах <image>. Ймовірно, вони спершу візуалізуються як порожні зображення, поки отримуються файли зображень (або з мережі, або з кешу), а потім так чи інакше обробляються незалежно, тож "синхронізація" оновлень вмісту – менш помітна. Однак блокування візуалізації під час декодування, хоча й невелике, може бути виміряне – навіть якщо важко помітити його людським зором.

Використання різних типів decoding може призвести до більш помітної різниці при динамічному вставлянні елементів <image> у DOM засобами JavaScript – дивіться подробиці в SVGImageElement.decoding.

Дозволені значення:

sync

Декодувати зображення синхронно, вкупі з візуалізацією решти вмісту, та показати все разом.

async

Декодувати зображення асинхронно, після візуалізації, а показати інший вміст.

auto

Немає побажань щодо режиму декодування; браузер вирішує, що найкраще для користувача. Це усталене значення.

Приклад

<svg width="200" height="200" xmlns="http://www.w3.org/2000/svg">
  <image
    href="https://example.com/mdn_logo_dark.png"
    height="200"
    width="200"
    decoding="async" />
</svg>

Специфікації

Якщо ви це бачите — значить, щось трапилося з цією сторінкою.

Сумісність із браузерами

Якщо ви це бачите — значить, щось трапилося з цією сторінкою.

Дивіться також