css3 媒体

Media Type 媒体类型

  媒体类型是CSS2中一个非常有用的属性。通过媒体类型可以对不同的设备指定不同的样式。

  W3C共列出十种媒体类型,如表:

值 设备类型
all 所有设备
Braille 盲人用点字法触觉回馈设备
Embossed 盲文打字机
Handheld 便携设备
Print 打印用纸或打印预览视图
Projection 各种投影设备
Screen 电脑显示器
Speech 语音或音频合成器
TV 电视机类型设备
Tty 使用固定密度字母栅格的媒介,比如电传打字机和终端

  其中screen,all,print为最常见的三种媒体类型。

媒体类型的引用方法

  1. link方法:在<link>标签引用样式的时候引入媒体类型,通过media属性指定不同的媒体类型。

     <link rel="stylesheet" type="text/css" href="style.css" media="screen">
  2. xml方法:与link引入媒体类型类似,也是通过media属性来指定。

     <?xml-stylesheet type="text/css" media="screen" href="style.css">
  3. @import方法:@import是用来引用样式文件的方法之一,同样可以用来引用类型。@import引入媒体类型主要有两种方式。

    一种是在样式文件中通过@import调用另一个文件;

     @import url(style.css) screen;

    另一种是在标签<style>中引入。

     <style>
    @import url(style.css) screen;
    </style>
  4. @media方法:@media是CSS3中新引进的特性,称为媒体查询。在页面中可以通过这个属性来引入媒体类型。与@import类似,也有两种类型。

    一种是在样式文件中通过@media引用媒体类型;

     @media screen{
    选择器{/*样式*/}
    }

    另一种是在标签<style>中引入。

     <style>
    @media screen{
    选择器{/*样式*/}
    }
    </style>

以上四种方法都可以引用媒体类型,推荐使用第一种与第四种。

Media Query媒体特性

  媒体特性是CSS3对媒体类型的增强版。

  W3C共列出13种CSS3中常用的特性,如表:

属性 值 Min/Max 描述
color 整数 Yes 每种色彩的字节数
color-index 整数 Yes 色彩表中的色彩数
device-aspect-ratio 整数/整数 Yes 宽高比例
device-height Length Yes 设备屏幕的输出高度
device-width Length Yes 设备屏幕的输出宽度
grid 整数 No 是否基于栅格的设备
height Length Yes 渲染页面的高度
monochrome 整数 Yes 单色帧缓冲器中每像素字节
resolution 分辨率(dpi/dpcm) Yes 分辨率
scan Progressive interlaced No Tv媒体类型的扫描方式
width Length Yes 渲染界面的宽度
orientation portrait/landsscape No 横屏或竖屏

Media Query使用方法

@media 媒体类型 and (媒体特性){/*样式*/}

  使用Media Query时必须要使用@media开头,然后指定媒体类型,随后是指定媒体特性。

  1. 最大宽度max-width

    max-width是媒体特性中最常用的一个特性,意思是指媒体类型小于或等于指定的宽度时,样式生效。

     @media screen and (max-width:480px){
    div{
    width:400px;
    }
    }

    意思是当屏幕小于或等于480px时,div的宽度被重置为400px。

  2. 最小宽度min-width

    min-width与max-width相反,即媒体类型大于或等于指定宽度时,样式生效。

     @media screen and (min-width:900px){
    div{width:900px;}
    }

    当最小宽度等于或大于900px时,div的宽度重置为900px

  3. 多个媒体特性使用

    Media Query可以使用关键词“and”将多个媒体特性结合在一起。

     @media screen and (min-width:400px) and (max-width:600px){
    div{
    background:red;
    }
    }

    当屏幕宽度在400px~600px时,div的背景色变为红色。

  4. 设备屏幕的输出宽度Device width

    还可以根据屏幕尺寸设置相应的样式

     <link rel="stylesheet" media="screen and (max-device-width:500px)" href="style.css" />

    样式适用于最大宽度为500px,这里的max-device-width所指的是实际分辨率,也就是指可视面积分辨率。

  5. not关键词

    关键词not用来排除某种制定的媒体类型,也就是说对后面的表达式执行取反操作。

     @media not print and (max-widht:1200px){/*样式*/}

    样式代码将被使用在除了打印设备和屏幕宽度小于1200px的所有设备。

  6. only关键词

    only用来指定某种特定的媒体类型,可以排除不支持媒体查询(Media Query)的浏览器。only很多时候是用来对不支持Media query却支持Media Type的设备隐藏样式表。因此支持媒体特性的设备正常调用样式,此时就当only不存在;不支持媒体特性但支持媒体类型的设备,就不会读取样式,因为先读取的是only而不是screen;不支持Media Query的浏览器,不论是否支持only,样式都不会被采用。

     <link rel="stylesheet" media="only screen and (max-device-width:1200px)" href="style.css">

CSS3 媒体特性完。

CSS3 媒体记的更多相关文章

  1. CSS3 媒体查询移动设备尺寸 Media Queries for Standard Devices (包括 苹果手表 apple watch)

    /* ----------- iPhone 4 and 4S ----------- */ /* Portrait and Landscape */ @media only screen and (m ...

  2. iPhone的CSS3媒体查询

    iPhone的CSS3媒体查询: 各版本的iPhone媒体查询是根据其分辨率和一些CSS3媒体查询的特性来实现媒体查询的...详见下: iPhone6的媒体查询: @media only screen ...

  3. iPhone6的CSS3媒体查询

    @media only screen and (min-device-width: 375px) and (max-device-width: 667px) and (orientation : po ...

  4. CSS3媒体查询使用小结

    首先我们在使用Media的时候需要先设置下面这段代码,来兼容移动设备的展示效果: 准备工作1:设置Meta标签 <meta name="viewport" content=& ...

  5. CSS3媒体查询

    随着响应式设计模型的诞生,Web网站又要发生翻天腹地的改革浪潮,可能有些人会觉得在国内IE6用户居高不下的情况下,这些新的技术还不会广泛的蔓延下去,那你就错了,如今淘宝,凡客,携程等等公司都已经在大胆 ...

  6. 怎样使用CSS3媒体查询(Media Queries)制作响应式网站

    自本周开始博主将开始同大家一起研究响应式web设计,CSS3 Media Queries是入门,本周更新,博主将给大家分享media queries的一些常用的用法及注意事项. Media Queri ...

  7. CSS3媒体查询总结

    1.什么是媒体查询 媒体查询可以让我们根据设备显示器的特性(如视口宽度.屏幕比例.设备方向:横向或纵向)为其设定CSS样式,媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于 ...

  8. css3 媒体查询的学习。

    1.什么是媒体查询 媒体查询可以让我们根据设备显示器的特性(如视口宽度.屏幕比例.设备方向:横向或纵向)为其设定CSS样式,媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于 ...

  9. Html5 @media + css3 媒体查询

    css3 media媒体查询器用法总结   随着响应式设计模型的诞生,Web网站又要发生翻天腹地的改革浪潮,可能有些人会觉得在国内IE6用户居高不下的情况下,这些新的技术还不会广泛的蔓延下去,那你就错 ...

随机推荐

  1. java commons-lang 工具包 逃脱工具 转unicode 及其他

    <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</ar ...

  2. http请求中乱码------编码的转换

    在http请求中如果包含了汉字,那么就会出现乱码,引文默认的编码是ISO的,为了正常的显示,需要将编码转化为UTF或者gbk,下面提供一个辅助类. import java.io.Unsupported ...

  3. Oracle数据库程序包全局变量的应用

    1 前言  在程序实现过程中,经常用遇到一些全局变量或常数.在程序开发过程中,往往会将该变量或常数存储于临时表或前台程序的全局变量中,由此带来运行效率降低<频繁读取临时表>或安全隐患< ...

  4. 利用AssetsManager实现在线更新脚本文件lua、js、图片等资源(免去平台审核周期)

    转自:http://www.himigame.com/iphone-cocos2dx/1354.html 首先说明一个问题: 为什么要在线更新资源和脚本文件!? 对于此问题,那要说的太多了,简单概括, ...

  5. PostgreSQL的 initdb 源代码分析之三

    继续 其实接前面,整个while循环是这样的: ) { switch (c) { ...... } ...... } 这一句,c = getopt_long(argc, argv, "dD: ...

  6. Chrome Apps将可以打包成iOS或Android应用

    Chrome Apps 将可以在 iOS 和 Android 设备上独立运行了.开发者只要使用 Google今天 提供的工具集(toolchain)将自己的 Web App 打包,并将生成的应用上传到 ...

  7. CSS模块化

    1. Base2. Layout3. Module4. State5. Theme 1) Base rules Base rules are the defaults. eg: ;; } input[ ...

  8. JavaScipt call和apply用法

    转:http://www.cnblogs.com/wupeng/p/3477879.html Javascript call与apply记录 [注]:记录自己对javascript中call与appl ...

  9. Python integer objects implementation

    http://www.laurentluce.com/posts/python-integer-objects-implementation/ Python integer objects imple ...

  10. ie提示jquer缺少标识符,字符串或数字

    属性之间是要用","分隔的,但最后一个属性的后面在IE中是不能有的,firefox可有可无. 至于最后的";"是另外一回事了.这是Javascript的语法问题 ...