如果我知道要用图像标签显示的图像的高度和宽度,我应该包括高度和宽度属性,还是只把信息放在CSS中?还是两者都有?

前任.

<img src="profilepic.jpg" height="64" width="64" />

<img src="profilepic.jpg" height="64" width="64" style="height: 64px; width: 64px;" />

<img src="profilepic.jpg" style="height: 64px; width: 64px;" />

推荐答案

根据Google Page Speed,您应该始终在图像标签中定义宽度和高度.但是,要进行验证,您不能使用style标记.

此外,您应该始终指定与实际图像相同的高度和宽度,这样浏览器就不必对其进行任何修改(如调整大小).

我建议你做这件事

<img src="..." height="20" width="50">

Edit:有人在 comments 中建议,不添加任何属性会更快.根据谷歌的说法(并不是说它们是所有浏览器知识的终结):

如果包含的文档中未指定尺寸,或者指定的尺寸与实际图像的尺寸不匹配,则下载图像后,浏览器将需要回流并重新绘制.要防止回流,请在HTML标记或CSS中指定所有图像的宽度和高度.-Read More

考虑到这一点,您可以在CSS中执行img维度,但要进行验证,您必须在CSS文件中执行,而不是内联.

BTW, Google Page Speed is a series of tips focused on rendering the page faster.

Css相关问答推荐

单独.css文件中的样式不适用于Angular 元件

使用高图的背景大小渐变

为什么所有选项卡都没有显示在 React 的 MUI 选项卡组件中?

如何更改 JqGrid 中的pager 背景 colored颜色 ?

Tailwind css 和 Next.js 导航组件 z-index 不工作

CSS 字符串变量的正确null值是多少?

内部和外部 div 之间的像素大小的间隙

BootStrap:右对齐嵌套手风琴

如何测试页面上的文本被删除

您如何设置 Google Places Autocomplete API 的下拉菜单样式?

使用 JavaScript 将 CSS 添加到 ?

更改最后一个
  • 的 CSS
  • 宽度和高度似乎不适用于 :before 伪元素

    使用 CSS3 生成重复的六边形图案

    为什么 .class:last-of-type 不能按我的预期工作?

    在 Vuejs 中拥有全局 CSS 的最佳方式

    如何使用 JavaScript 获取元素的背景图片 URL?

    单选按钮和标签显示在同一行

    如何根据容器大小设置字体大小?

    CSS垂直对齐不适用于浮动