记录img标签with和height属性,如何影响图片渲染问题

先上结论

总结如下:

当我们设置一段如下的代码时

js 复制代码
<img src="https://live.mdnplay.dev/zh-CN/docs/Web/HTML/Element/img/clock-demo-400px.png" 
width="100" height="100" alt="MDN logo" 
srcset="clock-demo-400px.png" />

原图的尺寸是400 * 398并不是一个规则的正方形,但我们对img标签的width, height属性做如下调整

  1. 如果<img>标签只是设置了width时:

从上图我们可以看出,最终整个图片的渲染尺寸,是200 * 199尺寸,等同于以img的width的属性为最终的渲染基准,然后以原图的宽高比进行缩放,得出最终的渲染高度为199px

  1. 如果<img>标签只是设置了height时:

从上图我们可以看出,最终整个图片的渲染尺寸,是201 * 200尺寸,等同于以img的height的属性为最终的渲染基准,然后以原图的宽高比进行缩放,得出最终的渲染宽度为199px

  1. 如果<img>标签同时设置了widthheight时:

从上图我们可以看出,最终整个图片的渲染尺寸,是100 * 200尺寸,等同于以img的width * height的属性为最终的渲染结果,不再进行缩放

总结

知识点虽然小,但是也值得记录。

上述只是自己浅浅理解,肯定存在些许错误,如有错误,恳请指正

相关推荐
excel5 小时前
ES6 中函数的双重调用方式:fn() 与 fn\...``
前端
可乐爱宅着5 小时前
全栈框架next.js入手指南
前端·next.js
你的人类朋友7 小时前
什么是API签名?
前端·后端·安全
会豪9 小时前
Electron-Vite (一)快速构建桌面应用
前端
中微子9 小时前
React 执行阶段与渲染机制详解(基于 React 18+ 官方文档)
前端
唐某人丶9 小时前
教你如何用 JS 实现 Agent 系统(2)—— 开发 ReAct 版本的“深度搜索”
前端·人工智能·aigc
中微子9 小时前
深入剖析 useState产生的 setState的完整执行流程
前端
遂心_9 小时前
JavaScript 函数参数传递机制:一道经典面试题解析
前端·javascript
小徐_23339 小时前
uni-app vue3 也能使用 Echarts?Wot Starter 是这样做的!
前端·uni-app·echarts
RoyLin9 小时前
TypeScript设计模式:适配器模式
前端·后端·node.js