html - 使用 srcset 和 sizes 时 width 和 height 属性有什么作用?

标签 html css responsive-images

如果我们使用 srcsetsizes 属性,指定 src 属性作为回退仍然很有用。同样,我想如果指定了旧版浏览器,它们也会利用 widthheight 属性。但是现代浏览器呢?

例如:

<img
   src="foo100x100.jpg"
   srcset="foo100x100.jpg 100w, foo500x500.jpg 500w, foo900x900 900w"
   sizes="100vw"
   width="100"
   height="100"
   alt="example"
>

在这个例子中,widthheight 属性对现代浏览器有用吗?

最佳答案

根据实验,它的行为就像您以像素为单位指定了 widthheight CSS 属性一样。但是,它可以被您自己的 CSS 覆盖。

img {
  width: 200px;
  /* height will be 100px because of the HTML attribute */
}
<img
     src="http://placehold.it/100x100"
     srcset="http://placehold.it/100x100 100w, http://placehold.it/500x500 500w"
     sizes="100vw"
     alt=""
     width="100"
     height="100"
>

这有点令人失望,因为我希望现代浏览器在下载之前使用 widthheight HTML 属性来确定图像的宽高比图像,以避免页面加载时后续内容的布局跳来跳去。

关于html - 使用 srcset 和 sizes 时 width 和 height 属性有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37125773/

相关文章:

javascript - jQuery 不隐藏 div

javascript - 开关函数在未调用时触发,默认情况下在使用 addEventListener 时也不会阻止

html - Bootstrap - 为什么 z-index 较低的 div 会覆盖 z-index 较高的 div?

javascript - React 中相同样式组件的不同背景图像

CSS:仅在一个方向上缩放背景SVG

html - Rails CSS、JS 和 jQuery TypeErrors(适用于 Windows)

javascript - 将 Google Suggest 与 JavaScript 结合使用

javascript - 我不知道如何将切换转换转换为没有动画的隐藏/显示

html - CSS grid + srcset + sizes 适用于多种宽度和屏幕分辨率?

html - Internet Explorer 响应图像丢失纵横比