解决图片放大模糊

首先需要了解设备像素CSS像素CSS像素 是 Web 开发中的逻辑像素,设计者根据这些像素来布局页面。设备像素 是设备屏幕上的实际像素点数。

DPR 是 设备像素 和 CSS像素 的比率,所以进行缩放后,也需要对图片尺寸进行处理,以确保清晰度。图像尺寸 = CSS尺寸 * DPR。

可以通过 window.devicePixelRatio 获取当前缩放比例

将图片尺寸根据DPR缩放,150 * 4

更加清晰了

可以使用 srcset 属性设置多个尺寸的图片,浏览器会自动选择最合适的图片

当图片宽高不固定时,上面的方法就不适用了,因为无法确定CSS像素大小,需要使用下面写法

w标识设备像素,浏览器会根据当前设备的视口宽度,结合 sizes 属性计算出图片实际在页面上占据的尺寸(CSS 像素)。然后根据 srcset 中提供的图片宽度选择最合适的图片。

如果视口宽度为 400 像素,且 sizes 指定图片占据 50vw,则图片会占据视口宽度的一半,也就是 200 像素。浏览器会在 srcset 中选择最接近 200 像素的图片,也就是宽度为 300 像素的图片(300w)。

相关推荐
天天打码15 分钟前
Nuxt.js一个基于 Vue.js 的通用应用框架
前端·javascript·vue.js
Dnn0119 分钟前
前端读取本地项目中 public/a.xlsx 文件中的数据 vue3
前端·javascript·vue.js·读取xlsx数据
Liudef0634 分钟前
基于HTML的Word风格编辑器实现:从零打造功能完备的富文本编辑器
编辑器·html·word
一块小砖头儿36 分钟前
HTML向四周扩散背景
前端·javascript·html
陳長生.40 分钟前
JAVA EE(进阶)_HTML
javascript·css·java-ee·html
杨超越luckly41 分钟前
HTML应用指南:利用POST请求获取全国申通快递服务网点位置信息
大数据·前端·信息可视化·数据分析·html
Allen Bright43 分钟前
【HTML-1】HTML骨架标签:构建网页的基础框架
前端·html
OneT1me1 小时前
SN生成流水号并且打乱
java·linux·前端
眼镜chen1 小时前
luckysheet的使用——17.将表格作为pdf下载到本地
前端·javascript·vue.js·chrome·pdf
_oP_i1 小时前
python实现pdf转图片(针对每一页)
前端·数据库·python