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

Dav*_*nch 4 html5 image responsive-design picturefill

我刚刚开始一个新的网页,所以没有太多的标记要经过.

我把它放下:

<picture>
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
    <img src="images/smallme.jpg"alt="hero profile">
</picture>
Run Code Online (Sandbox Code Playgroud)

并且无论窗口的宽度如何,它都默认为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"alt="hero profile">-->
</picture>
Run Code Online (Sandbox Code Playgroud)

评论出img后备标签并没有显示任何内容.

我正在运行Chrome 52,它应支持图片元素.但它似乎表现得好像它不支持它或其他东西.我在这做错了什么?

rsp*_*eed 8

img内部元素picture元素是不可选的.该picture包装和它的source元素在那里改变img,而不是取代它.

  • 正是我所需要的。这完全吸引了我。我认为“img”标签是为了兼容性回退,但它实际上用于渲染。 (3认同)

clo*_*ned 5

它应该在 Chrome 中工作,也许您需要视口元标记来触发不同的源?<meta name="viewport" content="width=device-width, initial-scale=1"> 这是一个在 Chrome 中工作的简单图片标签示例。将其与您的网站进行比较,找出不同之处。


Pos*_*hin 5

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

所以,而不是:

<picture>
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
    <img src="images/smallme.jpg"alt="hero profile">
</picture>
Run Code Online (Sandbox Code Playgroud)

尝试这个:

<picture>
    <source media="(min-width: 465px)"
            srcset="images/medme.jpg">
    <source media="(min-width: 1000px)"
            srcset="images/largeme.jpg">
    <img src="images/smallme.jpg"alt="hero profile">
</picture>
Run Code Online (Sandbox Code Playgroud)

  • 好主意,这让我很感动,因为它按预期更改了图像,但没有更改“&lt;img&gt;”标记中图像的路径。别被骗了! (2认同)

Ita*_*Gal 0

根据此来源,媒体<source>属性根本不受支持......