目录
多媒体查询
语法
示例代码
通用媒体查询
媒体功能参考列表
多媒体查询
CSS的媒体查询是一种CSS的技术,它可以根据不同的设备类型、屏幕尺寸、方向、分辨率等条件来应用不同的CSS样式,从而为不同的设备和屏幕提供最佳的浏览体验。这样,当用户使用不同的设备或屏幕浏览网页时,网页的样式表现可以根据不同的条件自动进行调整,以保证页面的最佳显示效果。例如,在移动设备上,可以使用媒体查询来设置更小的字体大小,更紧凑的布局等等,以提高可读性和用户体验。
语法
## (1) 局部样式的媒体查询
@media [not]|[only] mediaType and (expressions) {
CSS 代码...;
}
## (2) 不同的设备加载不同的css文件
<link rel="stylesheet" media="mediaType and|not|only (expressions)" href="mymedia.css">## 语法解析
(1) @media:媒体查询关键词;
(2) 媒体修饰词:not(非限制)、only(唯一限制)、不写前二者(即所有,不限制);
(3) mediaType:媒体类型,all(所有)、print(打印机)、screen(屏幕)、speech(屏幕阅读器)等等,可参考媒体功能部分;
示例代码
## (1) 当页面宽度小于480px时,将背景颜色改为lightgreen
@media screen and (max-width: 480px) {
body {
background-color: lightgreen;
}
}
## (2) 当页面宽度大于480px时,将背景颜色改为lightgreen
@media screen and (min-width: 480px) {
#leftsidebar {width:200px;float:left;}
#main {margin-left:216px;}
}
## 总结
max-width确定了右边界,所以对应的媒体样式执行的条件就是(0,max-width]
min-width确定了左边界,所以对应的媒体样式执行的条件就是[min-width,+∞)
通用媒体查询
/* 手机屏幕 (小于等于 767px) */
@media only screen and (max-width: 767px) {/* 在这里可以导入手机屏幕的外部css */@import url("mobile.css");/*这里写针对手机屏幕的样式*/
}/* 平板屏幕 (768px 到 991px ) */
@media only screen and (min-width: 600px) {/* 在这里可以导入平板屏幕的外部css */@import url("pad.css");/*这里写针对平板屏幕的样式*/
}/* 普通电脑屏幕 (992px 到 1199px) */
@media only screen and (min-width: 768px) {/* 在这里可以导入普通电脑屏幕的外部css */@import url("computer.css");/*这里写针对普通电脑屏幕的样式*/
} /* 大屏电脑屏幕 (大于等于 1200px) */
@media only screen and (min-width: 992px) {/* 在这里可以导入大屏电脑屏幕的外部css */@import url("big-computer.css");/*这里写针对大屏电脑屏幕的样式*/
}
媒体功能参考列表
值 | 描述 |
---|---|
aspect-ratio | 定义输出设备中的页面可见区域宽度与高度的比率 |
color | 定义输出设备每一组彩色原件的个数。如果不是彩色设备,则值等于0 |
color-index | 定义在输出设备的彩色查询表中的条目数。如果没有使用彩色查询表,则值等于0 |
device-aspect-ratio | 定义输出设备的屏幕可见宽度与高度的比率。 |
device-height | 定义输出设备的屏幕可见高度。 |
device-width | 定义输出设备的屏幕可见宽度。 |
grid | 用来查询输出设备是否使用栅格或点阵。 |
height | 定义输出设备中的页面可见区域高度。 |
max-aspect-ratio | 定义输出设备的屏幕可见宽度与高度的最大比率。 |
max-color | 定义输出设备每一组彩色原件的最大个数。 |
max-color-index | 定义在输出设备的彩色查询表中的最大条目数。 |
max-device-aspect-ratio | 定义输出设备的屏幕可见宽度与高度的最大比率。 |
max-device-height | 定义输出设备的屏幕可见的最大高度。 |
max-device-width | 定义输出设备的屏幕最大可见宽度。 |
max-height | 定义输出设备中的页面最大可见区域高度。 |
max-monochrome | 定义在一个单色框架缓冲区中每像素包含的最大单色原件个数。 |
max-resolution | 定义设备的最大分辨率。 |
max-width | 定义输出设备中的页面最大可见区域宽度。 |
min-aspect-ratio | 定义输出设备中的页面可见区域宽度与高度的最小比率。 |
min-color | 定义输出设备每一组彩色原件的最小个数。 |
min-color-index | 定义在输出设备的彩色查询表中的最小条目数。 |
min-device-aspect-ratio | 定义输出设备的屏幕可见宽度与高度的最小比率。 |
min-device-width | 定义输出设备的屏幕最小可见宽度。 |
min-device-height | 定义输出设备的屏幕的最小可见高度。 |
min-height | 定义输出设备中的页面最小可见区域高度。 |
min-monochrome | 定义在一个单色框架缓冲区中每像素包含的最小单色原件个数 |
min-resolution | 定义设备的最小分辨率。 |
min-width | 定义输出设备中的页面最小可见区域宽度。 |
monochrome | 定义在一个单色框架缓冲区中每像素包含的单色原件个数。如果不是单色设备,则值等于0 |
orientation | 定义输出设备中的页面可见区域高度是否大于或等于宽度。 |
resolution | 定义设备的分辨率。如:96dpi, 300dpi, 118dpcm |
scan | 定义电视类设备的扫描工序。 |
width | 定义输出设备中的页面可见区域宽度。 |