媒体查询可用于检测的媒体特性,比如: width 、 height 和 color (等)。使用媒体查询,可以在不改变页面内容的情况下,为特定的一些输出设备定制显示效果。【相关视频教学推荐:css3教学】
媒体查询是怎么使用的?
我们可以将媒体查询视为浏览器的if-else语句来解释,媒体查询是评估为真或假的逻辑表达式。媒体查询包括可选的媒体类型、零个或多个媒体特性以及允许构造更复杂表达式的逻辑关键字。
1、基本语法:
@media [not | only] [and] ();
说明:
media-type(媒体类型)
媒体类型是可以显示HTML文档的广泛类别的用户代理设备。媒体类型列表已在媒体查询级别4规范中进行了修订。已弃用的媒体类型被识别为有效,但不会与任何设备匹配,即您的媒体查询仍将适用,但在所有设备上都应用,就像没有指定媒体类型一样。
可以设置以列的媒体类型:
all:匹配所有设备。
print:匹配打印机和用于再现打印显示的设备,例如在“预览”中显示文档的Web浏览器。
screen:匹配所有与打印或语音不匹配的设备。
speech:匹配屏幕阅读器和“读出”页面的类似设备。
media-condition(媒体功能)
媒体功能比媒体类型更精细,因为它针对相关设备设置单个特定功能。媒体功能的语法与CSS属性相同,包括功能名称,冒号和要测试的值都相同。
媒体功能列表也已从介质查询级别3更改为介质查询级别4;已弃用的功能已保留在规范中以便向后兼容,但强调它们不得用于新样式表。用户代理仍将按指定继续支持它们。
可以设置以列的媒体功能:
屏幕/设备的尺寸:
width
height
aspect-ratio
orientation
显示质量:
resolution
scan
grid
update
overflow-block
overflow-inline
颜色:
color
color-index
monochrome
color-gamut
相互作用:
pointer
hover
any-pointer 和 any-hover
脚本:
scripting:
2、媒体查询的使用示例:
实现CSS响应式媒体查询
例:
@media screen and (max-width:720px) and (min-width:320px){ body{ background-color:red; }@media screen and (max-width:320px){ body{ background-color:blue; }}
说明:
该段媒体查询的意思是:当设备屏幕宽度在320px~~720px之间时,媒体查询设置body的背景色(background-color:red;)会重叠之前的body背景色;当设备屏幕宽度在320px以下时,媒体查询可以设置body的背景色(background-color:blue;),同样会重叠之前的body背景色。
css @media查询的浏览器支持
基于媒体信息应用样式的方法,包括页面和设备尺寸等内容。
可以支持以下版本:
总结: