- HTML 教程
- HTML - 首页
- HTML - 路线图
- HTML - 简介
- HTML - 历史与演变
- HTML - 编辑器
- HTML - 基本标签
- HTML - 元素
- HTML - 属性
- HTML - 标题
- HTML - 段落
- HTML - 字体
- HTML - 块
- HTML - 样式表
- HTML - 格式化
- HTML - 引用
- HTML - 注释
- HTML - 颜色
- HTML - 图片
- HTML - 图片地图
- HTML - 内联框架
- HTML - 短语元素
- HTML - 元标签
- HTML - 类
- HTML - ID
- HTML - 背景
- HTML 表格
- HTML - 表格
- HTML - 表头与标题
- HTML - 表格样式
- HTML - 表格 Colgroup
- HTML - 嵌套表格
- HTML 列表
- HTML - 列表
- HTML - 无序列表
- HTML - 有序列表
- HTML - 定义列表
- HTML 链接
- HTML - 文本链接
- HTML - 图片链接
- HTML - 邮箱链接
- HTML 颜色名称与值
- HTML - 颜色名称
- HTML - RGB
- HTML - HEX
- HTML - HSL
- HTML 表单
- HTML - 表单
- HTML - 表单属性
- HTML - 表单控件
- HTML - 输入属性
- HTML 多媒体
- HTML - 视频元素
- HTML - 音频元素
- HTML - 嵌入多媒体
- HTML 头部
- HTML - Head 元素
- HTML - 添加 Favicon
- HTML - JavaScript
- HTML 布局
- HTML - 布局
- HTML - 布局元素
- HTML - 使用 CSS 进行布局
- HTML - 响应式设计
- HTML - 符号
- HTML - 表情符号
- HTML - 样式指南
- HTML 图形
- HTML - SVG
- HTML - Canvas
- HTML APIs
- HTML - Geolocation API
- HTML - 拖放 API
- HTML - Web Workers API
- HTML - WebSocket
- HTML - Web 存储
- HTML - 服务器发送事件
- HTML 其他
- HTML - 文档对象模型 (DOM)
- HTML - MathML
- HTML - 微数据
- HTML - IndexedDB
- HTML - Web 消息传递
- HTML - Web CORS
- HTML - Web RTC
- HTML 演示
- HTML - 音频播放器
- HTML - 视频播放器
- HTML - 网页幻灯片
- HTML 工具
- HTML - Velocity Draw
- HTML - 二维码
- HTML - Modernizer
- HTML - 验证
- HTML - 颜色选择器
- HTML 参考
- HTML - 速查表
- HTML - 标签参考
- HTML - 属性参考
- HTML - 事件参考
- HTML - 字体参考
- HTML - ASCII 码
- ASCII 表查询
- HTML - 颜色名称
- HTML - 实体
- MIME 媒体类型
- HTML - URL 编码
- 语言 ISO 代码
- HTML - 字符编码
- HTML - 已弃用的标签
- HTML 资源
- HTML - 快速指南
- HTML - 有用资源
- HTML - 颜色代码生成器
- HTML - 在线编辑器
HTML - <picture> 标签
HTML <picture> 标签定义了不同尺寸或分辨率的图像。它是<img> 标签的替代标签,包含<source> 和 <img> 元素。当您想根据设备显示不同的图像时,<picture> 标签非常有用。
<picture> 元素包含一个或多个<source> 元素和一个<img> 元素,后者作为块的最后一个子元素。<source> 元素包含针对各种显示设备场景的图像版本。<img> 元素描述了图像的尺寸和其他属性。浏览器获取每个子 <source> 元素并加载最合适的图像。如果找不到匹配项,浏览器将显示 <img> 标签提供的图像。
<picture> 标签的用途
<picture> 元素允许指定多个图像以更准确地填充浏览器视口,而不是只有一个根据视口宽度缩放的图像。它可以用于以下目的:
- 调整和裁剪适用于各种媒体情况的图片
- 在不支持某种格式时提供替代图像格式。
如何使用<picture> 标签?
您可以通过根据不同的媒体规则定义不同的图像来使用<picture> 标签。您需要使用多个<source> 元素和一个<img> 元素。
语法
以下是使用 picture 标签的语法
<picture> <source media="..." srcset=".."> <source media="..." srcset=".."> <img src="..." alt=".."> </picture>
与<picture> 标签一起使用的属性
HTML <picture> 标签还支持以下附加属性:
序号 | 属性与描述 |
---|---|
1 | 接受任何有效的媒体查询,这些查询通常在 CSS 中定义。 |
2 | 定义单个宽度描述符、带宽度描述符的单个媒体查询或带宽度描述符的媒体查询的逗号分隔列表。 |
3 | 指定图像的 URL。 |
4 | (必需) 指定在不同情况下使用的图像的 URL。 |
5 | 定义 MIME 类型。 |
示例 1:基本用法
以下示例演示如何使用 media 属性根据屏幕宽度指定不同的图像
<!DOCTYPE html> <html> <style> body { text-align: center; } </style> <body style="background-color:#EAFAF1"> <picture> <source media="(min-width: 600px)" srcset="/artificial_intelligence/images/artificial-intelligence-mini-logo.jpg"> <source media="(min-width: 450px)" srcset="/cg/images/logo.png"> <img src="/html/images/html-mini-logo.jpg" alt="LOGO" style="width:auto;"> </picture> </body> </html>
示例 2:视网膜显示器的响应式图像
以下示例演示如何根据视网膜显示器设置不同的图像。执行代码后,在视网膜显示器上将加载“html-mini-logo.jpg”,在普通显示器上将加载“logo.png”。
<!DOCTYPE html> <html> <style> body { text-align: center; } </style> <body style="background-color:#EAFAF1"> <picture> <source srcset="/html/images/html-mini-logo.jpg 2x, /cg/images/logo.png 1x"> <img src="/html/images/html_images.jpg" alt="High-resolution image"> </picture> </body> </html>
示例 3:使用不同的图像格式
此示例演示如何指定不同的格式。执行此示例后,如果浏览器支持 WebP,则将加载1.webp,这是一个更优化的格式。否则,将加载html_images.jpg。
<!DOCTYPE html> <html> <style> body { text-align: center; } </style> <body style="background-color:#EAFAF1"> <picture> <source type="image/webp" srcset="https://www.gstatic.com/webp/gallery/1.webp"/> <source type="image/jpeg" srcset="/html/images/html_images.jpg"/> <img src="/html/images/html-mini-logo.jpg" alt="Different formats images"/> </picture> </body> </html>
html_tags_reference.htm
广告