Chrome 52 似乎不支持 HTML5 图片元素? srcset 不工作

Posted

技术标签:

【中文标题】Chrome 52 似乎不支持 HTML5 图片元素? srcset 不工作【英文标题】:HTML5 Picture element does not seem to be supported by Chrome 52? Srcset not working 【发布时间】:2017-01-07 05:54:12 【问题描述】:

我刚刚创建了一个新网页,所以没有太多的标记可供查看。

我设置了这个:

<picture>
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
    <img src="images/smallme.jpg">
</picture>

无论窗口的宽度如何,它都默认为 medme.jpg 图片。我设置了这个:

<picture>
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
   <!-- <img src="images/smallme.jpg">-->
</picture>

注释掉 img 后备标签,它不显示任何内容。

我正在运行 Chrome 52,它应该支持图片元素。但它似乎表现得好像它不支持它或什么的。我在这里做错了什么?

【问题讨论】:

您确定正在提供图片吗?在开发工具的 Network 选项卡中检查网络请求 【参考方案1】:

根据this source,&lt;source&gt; 媒体属性根本不受支持...

【讨论】:

w3schools 最近在当前规范上落后了。【参考方案2】:

它应该在 chrome 中工作,也许您需要视口元标记来触发不同的来源? &lt;meta name="viewport" content="width=device-width, initial-scale=1"&gt; Here is a simple picture-tag example 在 chrome 中工作。将其与您的网站进行比较以找出不同之处。

【讨论】:

我实际上是从该示例网站复制粘贴:/ idk 它是怎么回事。我最终让它工作了,但它仍然以一种意想不到的方式运行。我不知道为什么【参考方案3】:

picture 元素内的img 元素不是可选的。 picture 包装器及其 source 元素用于更改 img,而不是替换它。

【讨论】:

正是我需要的。这完全让我明白了。我以为img 标签是为了兼容性回退,但它实际上用于渲染。 omg 我刚刚浪费了这么多时间,只是因为互联网上到处都写着(并强调) 是用于后备的。虽然实际上它是 中的一个强制性元素......谢谢@rspeed 但它不起作用。它总是在 img src 中渲染图像,忽略其他的。 @ChinmayGhule 确保imgpicture 元素的最后一个 子元素。 @rspeed 我确实这样做了,但还是没用。【参考方案4】:

这听起来很傻,但是您是否尝试过恢复订单?出于某种原因,这样做使它对我有用。

所以,而不是:

<picture>
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
    <img src="images/smallme.jpg">
</picture>

试试这个:

<picture>
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <img src="images/smallme.jpg">
</picture>

【讨论】:

以上是关于Chrome 52 似乎不支持 HTML5 图片元素? srcset 不工作的主要内容,如果未能解决你的问题,请参考以下文章

HTML5 视频 |视频不受支持/文件类型无效 | IE

为啥手机chrome 不支持html5的audio音频播放

HTML5中的localStorage啥时候会被清空

chrome 可以播放 html5 mp4 视频但 html5test 说 chrome 不支持 mp4 视频编解码器

Safari 和 Chrome 中的 HTML5 视频海报属性

Chrome 不支持 BUTTON 标签的“写作模式”?