decoding
decoding 属性,适用于 <image> 元素,它向浏览器提供一个提示,告知浏览器是应该与渲染其他内容一起执行图像解码,从而实现更“正确”的单次呈现(sync),还是先渲染并呈现其他内容,然后再解码图像并稍后呈现(async)。实际上,async 意味着下一次绘制不会等待图像解码完成。
在使用 decoding 属性处理静态 <image> 元素时,通常很难察觉到任何明显的效果。它们很可能最初会被渲染成空白图像,直到图像文件被获取(无论是从网络还是从缓存中),然后它们会被独立处理,因此内容更新的“同步”效果不太明显。然而,解码过程中造成的渲染阻塞,虽然通常很小,但可以被测量到——即使很难用肉眼观察到。
当通过 JavaScript 动态将 <image> 元素插入 DOM 时,使用不同的 decoding 类型可以产生更显著的差异——有关更多详细信息,请参阅 SVGImageElement.decoding。
允许的值
示例
html
<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 |
浏览器兼容性
加载中…
另见
- SVGImageElement: decoding 属性
- What does the image decoding attribute actually do? (tunetheweb.com, 2023)