HTML img 标签可以有多个 src 属性吗?
就像视频标签如何提供多个源属性以便 mp4 视频可以回退到 ogg 视频一样,我希望获得 svg 图像以回退到 png 图像。
Much like how the video tag can provide multiple source attributes so an mp4 video can fall back to an ogg video, I would like to get an svg image to fall back to an png image.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
在提问时这是不可能的。但现在可以这样做:
请参阅 MDN 上的文档< /a>
At the time of the question it wasn't possible. But now it is OK to do like this:
See docs on MDN
不,不能。
但是,您可以使用 CSS 背景图像来伪造它。
为了避免显示损坏的图像字形,您可能根本不希望使用
标记,而是使用两个具有不同背景图像的嵌套元素。 (请注意,这会损害可访问性)
No, it cannot.
However, you can fake it using CSS background images.
To avoid displaying the broken image glyph, you might want to not use an
<img>
tag at all and instead use two nested elements with different background images. (Note that that would hurt accessibility)这里有一篇文章可能会有所帮助:后备图像和超时 - 外部内容。 Javascript
它提供了一些 javascript 选项。
使用背景图像效果很好,但您必须知道图像的尺寸。如果您不知道,那么这可能会很棘手。
There's a post here that might help: Fallback image and timeout - External Content. Javascript
It offers a few javascript options.
Using a background image works well, but you will have to know what the dimensions of your images are. If you don't know then it may be tricky.
尽管这可能不是您想要的,但值得一提的是,您可以指定视网膜显示屏的不同分辨率:
Though this is probably not what you wanted, it's worth mentioning that you can specify different resolutions for retina displays:
只需将 svg 包含为
那应该有效。只有当无法显示 svg 时才会显示 png 图像。
Just include the svg as
<object>
and put<img>
inside of it.That should work. The png image will only be shown when it's impossible to display svg.
简单的回答...不。
Simple answer... No.