decoding
Ограниченная доступность
Эта функция не входит в Baseline, поскольку не работает в некоторых наиболее широко используемых браузерах.
Атрибут 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>
Спецификации
| Спецификация |
|---|
| HTML> # dom-img-decoding> |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | WebView на iOS | |
decoding |
65 | 79 | 63 | 52 | Нет | 65 | 63 | 47 | Нет | 9.0 | 65 | Нет |
См. также
- SVGImageElement: свойство decoding
- Что на самом деле делает атрибут image decoding? на tunetheweb.com (2023)
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/SVG/Reference/Attribute/decoding