媒体查询详解

媒体查询是响应式设计的核心。

css语法:

以@media开头来表示这是一条媒体查询语句。

@media mediatype and|not|only (media feature) {
    CSS-Code;
}

或针对不同 stylesheets :

<link rel="stylesheet" media="mediatype and|not|only (media feature)" href="mystylesheet.css">

详解:

mediatype媒体类型:

1.all:用于所有设备

2.print:用于打印机和打印预览

3.screen:用于电脑屏幕,平板电脑,智能手机等

4.speech:应用于屏幕阅读器等发声设备

其余已废弃

连接符

1.and 把多个 媒体属性 组合成一条媒体查询。只有当每个属性都为真时,结果才为真。

2.or 或,(逗号) 如果任何一个媒体查询返回真,样式就是有效的。

3.not 应用于整个媒体查询,在媒体查询为假时返回真,在逗号媒体查询列表中 not 仅会否定它应用到的媒体查询上而不影响其它的媒体查询。 

4.only 

操作符表示仅在媒体查询匹配成功时应用指定样式。可以通过它让选中的样式在老式浏览器中不被应用,其实无论是否使用only操作符都对结果无影响

实际上,only、not、and和or(用逗号表示)这四种逻辑中,只有and比较常用

media feature 媒体属性

媒体属性是CSS3新增的内容,多数媒体属性带有“min-”和“max-”前缀,用于表达“小于等于”和“大于等于”。这避免了使用与HTML和XML冲突的“<”和“>”字符

媒体属性必须用括号()包起来,否则无效

1.width | min-width | max-width//定义输出设备中的页面可见区域宽度。

2.height | min-height | max-height//定义输出设备中的页面可见区域高度。

3.device-width | min-device-width | max-device-width//定义输出设备的屏幕可见宽度。

4.device-height | min-device-height | max-device-height//定义输出设备的屏幕可见高度。

注:设备宽度(device-width)指的是显示该页面的屏幕宽度,这里指的是屏幕宽度,通常可以使用于移动设备的,因为这样的设备具有更小的显示区域。宽度(width)指的是浏览器窗口的宽度,特定媒体类型的渲染视区,对于桌面的操作系统来说,其实就是当前浏览器的宽度(并且是包括滚动条的)。且宽度默认等于屏幕宽度(width=device-width)

5.aspect-ratio | min-aspect-ratio | max-aspect-ratio//定义输出设备中的页面可见区域宽度与高度的比率

6.device-aspect-ratio | min-device-aspect-ratio | max-device-aspect-ratio//定义输出设备的屏幕可见宽度与高度的比率。

7.color | min-color | max-color//定义输出设备每一组彩色原件的个数。如果不是彩色设备,则值等于0

8.color-index | min-color-index | max-color-index//定义在输出设备的彩色查询表中的条目数。如果没有使用彩色查询表,则值等于0

9.monochrome | min-monochrome | max-monochrome  //定义在一个单色框架缓冲区中每像素包含的单色原件个数。如果不是单色设备,则值等于0

10.resolution | min-resolution | max-resolution //定义设备的分辨率。如:96dpi, 300dpi, 118dpcm

11。scan | grid  //定义电视类设备的扫描工序|用来查询输出设备是否使用栅格或点阵。

例:

@media only screen and (max-width: 500px) {
    .gridmenu {
        width:100%;
    }

    .gridmain {
        width:100%;
    }

    .gridright {
        width:100%;
    }
}

posted @ 2017-04-21 01:49  小明学长  阅读(947)  评论(0编辑  收藏  举报