<source> 标签media属性指定某种媒体在某种情况下才执行。
根据窗口大小显示图片
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>根据窗口大小显示图片-HTML教程www.xuandaima.com</title> </head> <body> <picture> <source media="(min-width: 650px)" srcset="/Template/Test/img/ditu.png"> <source media="(min-width: 465px)" srcset="/Template/Test/img/drawImage.jpg"> <img src="/Template/Test/img/BJ.png" alt="fj" style="width:auto;"> </picture> <p>调整浏览器大小以查看以不同视口大小加载的不同版本的图片。 浏览器查找媒体查询与用户当前视口宽度匹配的第一个源元素, 并获取srcset属性中指定的图像。</p> <p>img元素是图片声明块的最后一个子标记。 img元素用于为不支持picture元素的浏览器提供向后兼容性,或者如果没有匹配源标签。 </p> <p><strong>注意:</strong>IE和Safari及更早版本不支持picture元素。</p> </body> </html>
<picture> | 是图像管理标签 |
<source> | 是媒体标签。 |
media="(min-width: 650px)" | 在窗口大于等于650像素的时候显示srcset属性的URL地址 |
srcset="/Template/Test/img/ditu.png" | 显示ditu.png图像URL地址 |
<img> | 是图像标签,代码表示在前面的条件不成立的时候显示该图像。 |
![]() | media="screen and (min-width:650px)" 则是在计算机屏幕和浏览器的宽带大于等于650的时候执行 |
注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。
media="语句"
值 | 描述 |
---|---|
and | 规定一个 AND 运算符。 |
not | 规定一个 NOT 运算符。 |
, | 规定一个 OR 运算符。 |
值 | 描述 |
---|---|
all | 默认。适用于所有设备。 |
aural | 语音合成器。 |
braille | 盲文反馈装置。 |
handheld | 手持设备(小屏幕、有限带宽)。 |
projection | 投影仪。 |
打印预览模式/打印页面。 | |
screen | 计算机屏幕。 |
tty | 电传打字机以及类似的使用等宽字符网格的媒体。 |
tv | 电视机类型设备(低分辨率、有限的滚屏能力)。 |
值 | 描述 |
---|---|
width | 规定目标显示区域的宽度。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (min-width:500px)" |
height | 规定目标显示区域的高度。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (max-height:700px)" |
device-width | 规定目标显示器/纸张的宽度。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (device-width:500px)" |
device-height | 规定目标显示器/纸张的高度。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (device-height:500px)" |
orientation | 规定目标显示器/纸张的方向。 可能的值:"portrait" 或 "landscape"。 例子:media="all and (orientation: landscape)" |
aspect-ratio | 规定目标显示区域的宽度/高度比。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (aspect-ratio:16/9)" |
device-aspect-ratio | 规定目标显示器/纸张的 device-width/device-height 比率。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (aspect-ratio:16/9)" |
color | 规定目标显示器的 bits/color。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (color:3)" |
color-index | 规定目标显示器可以处理的颜色数。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (min-color-index:256)" |
monochrome | 规定单色帧缓冲中的 bits/pixel。 可使用 "min-" 和 "max-" 前缀。 例子:media="screen and (monochrome:2)" |
resolution | 规定目标显示器/纸张的像素密度 (dpi 或 dpcm)。 可使用 "min-" 和 "max-" 前缀。 例子:media="print and (resolution:300dpi)" |
scan | 规定 tv 显示器的扫描方式。 可能的值:"progressive" 和 "interlace"。 例子:media="tv and (scan:interlace)" |
grid | 规定输出设备是否是网格或位图。 可能的值:"1" 为网格,否则为 "0"。 例子:media="handheld and (grid:1)" |