我正在寻找某种方法来定位img
元素在HTML
从 w3schools.com 注意到这句话的页面(它讲的是设置width
in an img
元素):
在 HTML 4.01 中,宽度可以以像素或包含元素的百分比来定义。在 HTML5 中,该值必须以像素为单位。
它说宽度属性must以像素而不是百分比设置。但使用百分比时解决我的问题要容易得多。我使用了百分比并在最新版本的 Firefox、Chrome 和 IE 中检查了结果。一切都很好。
当百分比实际上工作正常时(尽管有 W3Schools 的指令),使用百分比会产生什么不良后果?
在 HTML 中而不是在 CSS 中给出图像尺寸的主要原因是,当浏览器等待图像加载时,用户代理(浏览器)可以在页面中为图像留出适当的空间。如果图像大小未设置,则图像下载后浏览器将必须重新渲染页面,并对页面上的每个后续图像再次执行相同的操作。
WHATWG HTML5 文档在以下部分中说明了以下内容:表示标记 https://html.spec.whatwg.org/#presentational-markup:
由于这些原因,在此版本中已从 HTML 中删除了表示性标记。这种变化并不令人意外。 HTML4 多年前就废弃了表现性标记,并提供了一种模式(HTML4 Transitional)来帮助作者摆脱表现性标记;后来,XHTML 1.1 更进一步,完全废弃了这些功能。
我假设由于百分比值与包含图像的元素相关,因此它们被认为是演示性的,而像素尺寸是绝对的,并且不会因平台、用户代理或视口而异。
与许多 HTML 属性和特性一样,您可以使用无效、过时或不推荐的语法,浏览器仍将呈现您的页面。这部分是因为它们通常是向后兼容的——即当语法有效时,它们可以呈现用早期版本的标记语言编写的 HTML 文档。
您应该使用无效语法吗?好吧,你可以这样做,但它也有缺点:不可预测的浏览器渲染无效元素、浏览器性能差、跨浏览器兼容性问题、潜在的安全问题等等。我们还知道,有一些 HTML 学究们会像看狗吐出来的东西一样查看您的语法。最终,如果你能以正确的方式做某事——在 CSS 中指定百分比宽度,而不是在 HTML 中——我认为仅仅因为你尝试过的浏览器仍然会呈现而做错事没有任何意义这一页。
图像的宽度和高度可以在 CSS 中使用各种不同的单位指定 - 像素、ems、rems、百分比、厘米、英寸等 - 请参阅CSS 测量单位 @ w3.org https://www.w3.org/Style/Examples/007/units.en.html.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)