首页 > 其他分享 >HTML 里 img 元素的 src 和 srcset 属性有何区别?

HTML 里 img 元素的 src 和 srcset 属性有何区别?

时间:2023-05-16 18:44:58浏览次数:45  
标签:src 浏览器 img 有何 图片 srcset 属性

在 HTML 中,img 元素通常用于在网页中插入图片。img 元素有两个相关的属性:src 和 srcset。

src 属性指定图像的 URL,它是必需的。浏览器将使用该 URL 加载图像并将其显示在页面上。

srcset 属性允许您指定一系列不同大小或分辨率的图像文件,以便浏览器可以根据设备的像素密度和屏幕大小选择最合适的图像。srcset 属性的值是一个逗号分隔的列表,其中每个项目都有一个图像文件的 URL,后跟一个空格和一个分辨率描述符。描述符指定图像的分辨率,并告诉浏览器如何选择最合适的图像。通常使用像素密度(如“1x”或“2x”)或图像宽度(如“320w”或“640w”)作为描述符。

在使用 srcset 属性时,可以选择一个默认的图像文件,将其 URL 放在 img 元素的 src 属性中。如果浏览器不支持 srcset 属性或无法选择最合适的图像,则将加载默认的图像文件。

总的来说,src 属性用于指定图像的 URL,而 srcset 属性用于指定一系列不同大小或分辨率的图像文件,以便浏览器可以选择最合适的图像来适应不同的设备和屏幕大小。

下面是一个具体的例子。

src 里的 NmOQ 是默认值,类型为 zoom:

在现代浏览器中,当浏览器遇到一个带有 srcset 属性的 img 标签时,它将根据以下步骤来渲染图片:

  1. 首先,浏览器会根据 devicePixelRatio (设备像素比)确定屏幕的实际像素密度。例如,Retina 显示屏幕的 devicePixelRatio 为 2。

  2. 接下来,浏览器会将 srcset 属性的值解析为一组可用的图片资源和它们的尺寸。每个图片资源都包含了一个图片 URL 和一个描述该图片的宽度,例如:https://example.com/image-1000w.jpg 1000w

  3. 浏览器根据屏幕的宽度和每张图片的宽度来计算出最佳的图片大小,这个大小就是要显示的图片的实际像素尺寸。例如,如果设备的宽度为 500px,浏览器会选择一个最接近 500px 的图片资源,例如图片宽度为 600px 的那张图片。

  4. 最后,浏览器将选中的图片资源的 URL 赋给 img 元素的 src 属性,然后加载并显示该图片。

总之,浏览器会根据设备像素比、可用图片资源和设备宽度来自动选择和加载最佳的图片,从而实现高清晰度和响应式图片的效果。

标签:src,浏览器,img,有何,图片,srcset,属性
From: https://www.cnblogs.com/sap-jerry/p/17406495.html

相关文章

  • 白酒生产智能监控及数字化管理平台有何功能
    白酒是我国特有的酒种,各区不同的生产工序营造了不同的口味,受到不同消费者的喜爱。随着工业技术的进一步发展,酿酒行业逐步将自动化技术引入到传统的酿酒工艺中,在甄配料、蒸煮馏酒、摊凉加曲及包装等工段都实现自动化控制,对于提高生产效率、提升产品品质都有积极作用。自动化基础逐渐......
  • 使用富文本编辑,内容有<img src=xxx//xx//xx>报错:JSON parse error: Unexpected charac
     前端使用富文本标签,填写内容里面有图片地址或一些特殊字符,保存时导致报错后台json不能解析内容到实体类相应的字段中去报错代码:JSONparseerror:Unexpectedcharacter('\'(code92)):...解决办法:1、有的说在配置xss过滤时开放,保存的请求接口地址。————————......
  • 利用labelimg标注数据集
    第一章利用labelimg标注数据集1.1labelimg介绍Labelimg是一款开源的数据标注工具,可以标注三种格式。(1)VOC标签格式,保存为xml文件。(2)yolo标签格式,保存为txt文件。(3)createML标签格式,保存为json格式。1.2labelimg在Windows下的安装首先打开cmd命令行(快捷键:win+R)。进入cmd命......
  • img标签的title和alt区别?png、jpg、gif这些图片格式区别?
    img标签的title和alt区别title是鼠标移入图片的时候显示的内容;alt是图片无法加载时显示的内容在SEO层面上,蜘蛛抓取不到图片的内容,所以在写img标签时为了增加SEO效果就要设置alt属性,来描述这张图是什么内容或者关键词png、jpg、gif图片格式区别png:无损压缩,尺寸体积要比......
  • RK3588 Android12 编译打包私有ext4格式vendor.img并挂载到新增vendor_private分区
    一、制作ext4格式的vendor.img使用simg2img工具直接将现有的vendor.img转换成ext4格式的vendor.disk即可 ./out/host/linux-x86/bin/simg2img  out/target/product/ribeye/vendor.img  vendor.disk然后就可以直接挂载到新增分区对应的目录:mount vendor.disk/vendor_......
  • imgui是什么?
    如果从事过C++Windows客户端开发,大家对MFC、Qt、DuiLib等各种DirectUI应该有了解,本篇给大家介绍一个超级轻量级的C++开源跨平台图形界面框架ImGUI.ImGUI主要用于游戏行业,所有的控件都需要手绘实现,当然性能也是满满的,毕竟是直接用dx/opengl来实现。参考:https://blog.csdn.net/ya......
  • Dear ImGui
    DearImGui(全称为DearImgui:Bloat-freeImmediateModeGraphicalUserinterface)是一个开源的基于C++的图形用户界面库,它专门用于创建快速、轻量级的用户界面。与传统的基于控件树的GUI框架不同,DearImGui采用了立即模式(immediatemode)的设计理念,意味着每一帧都需要重新渲染......
  • blockimgdiff中方法分析01
    https://blog.csdn.net/Android_2016/article/details/98947824 关于blockimgdiff文件,本篇文档将详细分析初步生成transfer对象和生成diff的字典,并对几个重要方法进行解析.一、传入blockimgdiff的参数分析二、blockimgdiff中方法分析 一、传入blockimgdiff的参数分析......
  • Vue插件图片预览hevue-img-preview
    安装#安装npminstallhevue-img-preview--save#main.js引入importhevueImgPreviewfrom'hevue-img-preview'Vue.use(hevueImgPreview)#使用#//给任意对象添加任意事件,例如<img:src="imgurl"@click="previewImg(imgurl)">#//在事件里调用方法进行预......
  • JAVA 基础(学习img)
    Date:2023-04-2418:57:14尚硅谷Java零基础全套视频教程PS:只记重要的,自己不会的P1课程简介P2课程目录P3JAVA学习路线对我重要的step14IDEA安装使用P4谈谈JAVA吹水P5学习路线2023最新Java学习路线学习路线P6计算机硬件P7常见DOS命令P8不同编程语......