Media Queries语法总结
Media Queries的语法如下所示:
@media [media_query] media_type and media_feature
使用Media Queries样式模块时都必须以"@media"方式开头。
media_query表示查询关键字,在这里可以使用not关键字和only关键字。not关键字表示对后面的样式表达式执行取反操作。例如如下代码:
@media not screen and (max-device-width:480px)
only关键字的作用是,让不支持Media Queries的设备但能读取Media Type类型的浏览器忽略这个样式。例如如下代码:
@media only screen and (max-device-width:480px)
对于支持Media Queries的移动设备来说,如果存在only关键字,移动设备的Web浏览器会忽略only关键字并直接根据后面的表达式应用样式文件。对于不支持Media Queries的设备但能够读取Media Type类型的Web浏览器,遇到only关键字时会忽略这个样式文件。
虽然media_query这个类型在整个Media Queries语法中并不是必需的类型,但是有时候在实际开发过程中却是非常重要的查询参数类型。
media_type参数的作用是指定设备类型,通常称为媒体类型。实际上在CSS2.1版本时已经定义了该媒体类型。表6-1列出了media_type允许定义的10种设备类型。
表6 1 media_type设备可用类型一览表
|
media_type |
设备类型说明 |
|
all |
所有设备 |
|
aural |
听觉设备 |
|
braille |
点字触觉设备 |
|
handled |
便携设备,如手机、平板电脑 |
|
|
打印预览图等 |
|
projection |
投影设备 |
|
screen |
显示器、笔记本、移动端等设备 |
|
tty |
如打字机或终端等设备 |
|
tv |
电视机等设备类型 |
|
embossed |
盲文打印机 |
media_feature的主要作用是定义CSS中的设备特性,大部分移动设备特性都允许接受min/ max的前缀。例如,min-width表示指定大于等于该值;max-width表示指定小于等于该值。
表6-2显示media_feature设备特性的种类一览表。
表6 2 media_feature设备特性一览表
|
设 备 特 性 |
是否允许 min/max 前缀 |
特 性 的 值 |
说 明 |
|
width |
允许 |
含单位的数值 |
指定浏览器窗口的宽度大小, 如480像素 |
|
height |
允许 |
含单位的数值 |
指定浏览器窗口的高度大小, 如320像素 |
|
device-width |
允许 |
含单位的数值 |
指定移动设备的屏幕分 辨率宽度大小,如480像素 |
|
device-height |
允许 |
含单位的数值 |
指定移动设备的屏幕分 辨率高度大小,如320像素 |
|
orientation |
不允许 |
字符串值 |
指定移动设备浏览器的窗口方向。 只能指定portrait(纵向)和landscape (横向)两个值 |
|
aspect-radio |
允许 |
比例值 |
指定移动设备浏览器窗口的 纵横比例,如16:9 |
|
device-aspect-radio |
允许 |
比例值 |
指定移动设备屏幕分辨率的 纵横比例,如16:9 |
|
color |
允许 |
整数值 |
指定移动设备使用多少位的颜色值 |
|
color-index |
允许 |
整数值 |
指定色彩表的色彩数 |
|
monochrome |
允许 |
整数值 |
指定单色帧缓冲器中每像素的字节数 |
|
resolution |
允许 |
分辨率值 |
指定移动设备屏幕的分辨率 |
|
scan |
不允许 |
字符串值 |
指定电视机类型设备的扫描方式。 只能指定两种值:progressive表 示逐行扫描和interlace表示隔行扫描 |
|
grid |
不允许 |
整数值 |
指定设备是基于栅格还是基于位图。 基于栅格时该值为1,否则为0 |
到目前为止,Media Queries样式模块在桌面端都得到了大部分现代浏览器的支持。例如IE 9浏览器、Firefox浏览器、Safari浏览器、Chrome浏览器、Opera浏览器。但是IE系列的浏览器中只有最新版本才支持该特性,IE8以下的版本不支持Media Queries。
从移动平台来说,基于两大平台Android和iOS的Web浏览器也都得到了良好的支持。同时,黑莓系列手机也支持Media Queries特性。
来自http://book.51cto.com/art/201204/328362.htm
Media Queries语法总结的更多相关文章
- CSS3系列四(Media Queries移动设备样式)
viewport设置适应移动设备屏幕大小 viewport:允许开发者创建一个虚拟窗口并自定义其窗口的大小或缩放功能 <meta name="viewport" conten ...
- css3的媒体查询(Media Queries)
我今天就总结一下响应式设计的核心CSS技术Media(媒体查询器)的用法. 先看一个简单的例子: <link rel="stylesheet" media="scr ...
- CSS3 Media Queries 详细介绍与使用方法
Media Queries 就是要在支援CSS3 的浏览器中才能正常工作,IE8 以下不支持. 而Media Queries 的套用方法千变万化,要套用在什么样的装置中,都可以自己来定义. 到底什么是 ...
- CSS学习笔记:Media Queries
CSS3提供了Media Queries(媒体查询)的概念,可以利用它查询以下数据: 1.浏览器窗口的宽和高: 2.设备的宽和高: 3.设备的手持方向,横向/竖向: 4.分辨率. @media规则的语 ...
- 媒体查询Media Queries详解
@media 标签可以说是响应式网页的开发基础.其主要由媒体类型(Media Type)和 媒体特性(Media Query)两部分组成. Media Type 设定后面规则生效的展示类型,包括all ...
- CSS3的媒体查询(Media Queries)与移动设备显示尺寸大全
媒体查询介绍 我今天就总结一下响应式设计的核心CSS技术Media(媒体查询器)的用法. 先看一个简单的例子: <link rel="stylesheet" media=&q ...
- [翻译]CSS3 Media Queries
Media Queries Official Manual:http://www.w3.org/TR/css3-mediaqueries/ 原文链接:http://www.smashingmagazi ...
- CSS3 响应式web设计,CSS3 Media Queries
两种方式,一种是直接在link中判断设备的尺寸,然后引用不同的css文件: <link rel="stylesheet" type="text/css" ...
- CSS3 Media Queries 详细介绍与使用方法[转]
Media Queries 就是要在支援CSS3 的浏览器中才能正常工作,IE8 以下不支援. 而Media Queries 的套用方法千变万化,要套用在什么样的装置中,都可以自己来定义. 关于Med ...
随机推荐
- Flask之静态文件处理
静态文件的处理 推荐 from flask import Flask,render_template app = Flask(__name__,template_folder='templates', ...
- Tensorflow-基础使用
Tensorflow基本概念 使用图(graphs)来表示计算任务 在被称之为会话(Session)的上下文(context)中执行图 使用tensor表示数据 通过变量(Variable)维护状态 ...
- 提取当前文件夹下的所有文件名.bat(Windows批处理文件)
@echo off dir /s/b *.* > 文件名.txt exit
- Bitter.Core系列二:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之数据库连接
Bitter.Core NETCore 相当的简单易用,下面附上使用示例: 数据中连接:请在你的NETCORE 项目中 创建:Bitter.json 配置文件,然后追加如下配置内容: MSSQL 连接 ...
- innodb和myisam原理
MyISAM索引实现 MyISAM引擎使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址.如图: 这里设表一共有三列,假设我们以Col1为主键,则上图是一个MyISAM表的主索引 ...
- 【PostgreSQL】PostgreSQL数据库浅析
前言 工作中数据库用的不多,大部分都是简单查询一下了事,某项目中突然要求后端进行比较全面的数据库操作,现对自己学到的东西做一下总结. 简介 废话不多说,上官网地址: PostgreSQL 9.4.4 ...
- JasperReports 取消自动分页/忽略分页
因为需要将合同比价单由PDF文档形式改为HTML页面方式,虽然转换文档类型了,但是发现HTML页面中间到了一定行数就出现了空行把Detail给隔开了.之前总想着怎样消除中间空行,以为是报表top页面边 ...
- 90% 的 Java 程序员都说不上来的为何 Java 代码越执行越快(1)- JIT编译优化
麻烦大家帮我投一票哈,谢谢 经常听到 Java 性能不如 C/C++ 的言论,也经常听说 Java 程序需要预热,那么其中主要原因是啥呢? 面试的时候谈到 JVM,也有很多面试官喜欢问,为啥 Java ...
- python 基础二-----数据类型和控制语句
一.数据类型: 1)数据类型 1.整数(int) 2.浮点数(float) 3.字符串(string) 4.列表(list) 5. 元组(tuple) 6.字典(dict): key和value是一一 ...
- Prometheus自定义监控内容
Prometheus自定义监控内容 一.io.micrometer的使用 1.1 Counter 1.2 Gauge 1.3 Timer 1.4 Summary 二.扩展 相关内容原文地址: 博客园: ...