我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何在CSS3中使用@media属性

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何在CSS3中使用@media属性

本篇文章给大家分享的是有关如何在CSS3中使用@media属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

//语法:@media mediatype and | not | only (media feature) { css-code; }//也可以针对不同的媒体使用不同的stylesheets: <link rel="stylesheet" media="mediatype and|not|only (media feature)" href="mystylesheet.css">

一、首先是<meta>标签

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

这段代码的几个参数解释:

  • width = device-width:宽度等于当前设备的宽度

  • initial-scale:初始的缩放比例(默认设置为1.0)

  • minimum-scale:允许用户缩放到的最小比例(默认设置为1.0)

  • maximum-scale:允许用户缩放到的最大比例(默认设置为1.0)

  • user-scalable:用户是否可以手动缩放(默认设置为no,因为我们不希望用户放大缩小页面)

二、<head>标签中引入(CSS2 media)

其实并不是只有CSS3才支持Media的用法,早在CSS2开始就已经支持Media,具体用法,就是在HTML页面的head标签中插入如下代码:

例如我们想知道现在的移动设备是不是纵向放置的显示屏,可以这样写:

<link rel="stylesheet" type="text/css" media="screen and (orientation:portrait)" ;href="style.css">

页面宽度小于960的执行指定的样式文件:

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

既然CSS2可以实现CSS的这个效果为什么不用这个方法呢,很多人应该会问,但是上面这个方法,最大的弊端是他会增加页面http的请求次数,增加了页面负担,我们用CSS3把样式都写在一个文件里面才是最佳的方法。

下面来解释一下遇到冲突时的机制:

<link rel="stylesheet" href="styleA.css" media="screen and (min-width: 800px)">  <link rel="stylesheet" href="styleB.css" media="screen and (min-width: 600px) and (max-width: 800px)">  <link rel="stylesheet" href="styleC.css" media="screen and (max-width: 600px)">

上面将设备分成3种,分别是宽度大于800px时,应用 styleA ,宽度在600px到800px之间时应用 styleB ,以及宽度小于600px时应用 styleC 。那假如宽度正好等于800px时该应用那个样式?是 styleB,因为前两条表达式都成立,按CSS默认优先级规则后者覆盖了前者。

因此,为了避免冲突,这个例子正常情况应该这样写:

<link rel="stylesheet" href="styleA.css" media="screen">  <link rel="stylesheet" href="styleB.css" media="screen and (max-width: 800px)">  <link rel="stylesheet" href="styleC.css" media="screen and (max-width: 600px)">

三、回归CSS3 @media

上面我们大概讲了下CSS2的媒体查询用法,现在我们重新回到CSS3的媒体查询,在第一段代码上面我用的是小于960px的尺寸的写法,那现在我们来实现等于960px尺寸的代码,以下代码需要写在style标签或者css文件中:

@media screen and (max-device-width:960px){    body{background:red;}}

然后就是当浏览器尺寸大于960px时候的代码了:

@media screen and (min-width:960px){     body{background:orange;}}

我们还可以混合使用上面的用法:

@media screen and (min-width:960px) and (max-width:1200px){    body{background:yellow;}}

上面的这段代码的意思是当页面宽度大于960px小于1200px的时候执行下面的CSS。

四、Media所有参数汇总

以上就是我们最常需要用到的媒体查询器的三个特性,大于,等于,小于的写法。媒体查询器的全部功能肯定不止这三个功能,下面是我总结的它的一些参数用法解释:

  • width:浏览器可视宽度。

  • height:浏览器可视高度。

  • device-width:设备屏幕的宽度。

  • device-height:设备屏幕的高度。

  • orientation:检测设备目前处于横向还是纵向状态。

  • aspect-ratio:检测浏览器可视宽度和高度的比例。(例如:aspect-ratio:16/9)

  • device-aspect-ratio:检测设备的宽度和高度的比例。

  • color:检测颜色的位数。(例如:min-color:32就会检测设备是否拥有32位颜色)

  • color-index:检查设备颜色索引表中的颜色,他的值不能是负数。

  • monochrome:检测单色楨缓冲区域中的每个像素的位数。(这个太高级,估计咱很少会用的到)

  • resolution:检测屏幕或打印机的分辨率。(例如:min-resolution:300dpi或min-resolution:118dpcm)。

  • grid:检测输出的设备是网格的还是位图设备。

(max-width:599px) (min-width:600px) (orientation:portrait) 竖屏(orientation:landscape)        横屏(-webkit-min-device-pixel-ratio: 2) 像素比

五、媒体类型

all 所有媒体

braille 盲文触觉设备

embossed 盲文打印机

print 手持设备

projection 打印预览

screen 彩屏设备

speech '听觉'类似的媒体类型

tty 不适用像素的设备

tv 电视

六、关键字

and

not not关键字是用来排除某种制定的媒体类型

only only用来定某种特定的媒体类型

-很多时候是用来对那些不支持媒体特性但却支持媒体类型的设备

七、浏览器支持情况

IE8-

IE9+

Chrome 5+

Opera 10+

Firefox 3.6+<

Safari 4+

八、常用的几种屏幕宽度设定:

@media screen and (min-width: 1200px) {        css-code;}@media screen and(min-width: 960px) and (max-width: 1199px) {        css-code;}@media screen and(min-width: 768px) and (max-width: 959px) {        css-code;}@media screen and(min-width: 480px) and (max-width: 767px) {        css-code;}@media screen and (max-width: 479px) {        css-code;}

以上就是如何在CSS3中使用@media属性,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何在CSS3中使用@media属性

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何在CSS3中使用@media属性

本篇文章给大家分享的是有关如何在CSS3中使用@media属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。//语法:@media mediatype and | not |
2023-06-08

如何在CSS3中使用all属性

本篇文章给大家分享的是有关如何在CSS3中使用all属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、兼容性如下图:二、all是干嘛用的all属性实际上是所有CSS属性的缩
2023-06-08

如何在CSS3中使用content属性

这篇文章给大家介绍如何在CSS3中使用content属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。插入纯文字content:"插入的文章",或者content:none不插入内容html:XML/HTML Code
2023-06-09

如何在css3中使用animation属性

这篇文章给大家介绍如何在css3中使用animation属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。animation-name 动画名称,可以有多个值,用逗号隔开,表示绑定了多个动画animation-name
2023-06-08

perspective属性如何在CSS3中使用

perspective属性如何在CSS3中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。CSS3的transform可以做2D的操作,当然也有3D。但需要再一个拥有pers
2023-06-08

box-shadow属性如何在CSS3中使用

本篇文章给大家分享的是有关box-shadow属性如何在CSS3中使用,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。CSS Code复制内容到剪贴板E {box-shadow:
2023-06-09

如何在CSS3中使用linear-gradient属性

本篇文章为大家展示了如何在CSS3中使用linear-gradient属性,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。一、线性渐变在 Mozilla 下的应用语法:-moz-linear-grad
2023-06-08

如何在CSS3中使用Transition动画属性

这篇文章给大家介绍如何在CSS3中使用Transition动画属性,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。transition属性的值包括以下四个: •transition-property: 指定对H
2023-06-08

Media Queries怎么在CSS3中使用

这期内容当中小编将会给大家带来有关Media Queries怎么在CSS3中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。最大宽度max-width“max-width”是媒体特性中最常用的一个特性,
2023-06-09

column-fill属性怎么在CSS3中使用

column-fill属性怎么在CSS3中使用?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。column-fill 属性, 指定列之间高度是否对齐时使用。<规定如何对列进行填充
2023-06-08

flex-shrink属性怎么在CSS3中使用

今天就跟大家聊聊有关flex-shrink属性怎么在CSS3中使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。在CSS3 Flexbox中flex-shrink属性定义为: Thi
2023-06-09

怎么在CSS3中使用ruby-position属性

怎么在CSS3中使用ruby-position属性?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。属性值1.before 注音文本会在基础文字上面表示。(默认值)
2023-06-08

如何在CSS3中使用opacity属性设置透明效果

本篇文章为大家展示了如何在CSS3中使用opacity属性设置透明效果,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。CSS3 opacity 属性基本语法opacity: 不透明度;CSS3 opa
2023-06-08

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录