iis服务器助手广告
返回顶部
首页 > 资讯 > 前端开发 > html >CSS3媒体查询MediaQueries怎么用
  • 561
分享到

CSS3媒体查询MediaQueries怎么用

2024-04-02 19:04:59 561人浏览 八月长安
摘要

本篇文章为大家展示了css3媒体查询MediaQueries怎么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。语法 媒体查询包含了一个媒体类型 和如CSS3规范中

本篇文章为大家展示了css3媒体查询MediaQueries怎么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

语法

媒体查询包含了一个媒体类型 和如CSS3规范中描述的包含一个或多个表达式的媒体属性,这些媒体属性会被解析成真或假。如果媒体查询中的媒体类型与文档要展示的设备相符则查询结果为真,并且媒体查询中的所有表达式为真。

CSS Code复制内容到剪贴板

  1. <!-- link元素中的CSS媒体查询 -->   
    <link rel="stylesheet" media="(max-width: 800px)" href="example.css" />   
      
    <!-- 样式表中的CSS媒体查询 -->   
    <style>   
    @media (max-width: 600px) {   
      .facet_sidebar {   
        display: none;   
      }   
    }   
    </style>

当媒体查询为真时,相关的样式表或样式规则就会按照正常的级联规则被应用。即使媒体查询返回假, <link> 标签上带有媒体查询的样式表 仍将被下载 (只不过不会被应用)。

在不使用 not 或 only 操作符的情况下,媒体类型是可选的,默认为 all 。

逻辑操作符

操作符 not,and 和 only 可以用来构建复杂的媒体查询。
and 操作符用来把多个 媒体属性 组合起来,合并到同一条媒体查询中。只有当每个属性都为真时,这条查询的结果才为真。
not 操作符用来对一条媒体查询的结果进行取反。
only 操作符表示仅在媒体查询匹配成功的情况下应用指定样式。可以通过它让选中的样式在老式浏览器中不被应用。
若使用了 not 或 only 操作符,必须明确指定一个媒体类型。

你也可以将多个媒体查询以逗号分隔放在一起;只要其中任何一个为真,整个媒体语句就返回真。相当于 or 操作符。

and

and 关键字用于合并多个媒体属性或合并媒体属性与媒体类型。一个基本的媒体查询,即一个媒体属性与默认指定的 all媒体类型,可能像这样子:

CSS Code复制内容到剪贴板

  1. @media (min-width: 700px) { ... }  

如果你只想在横屏时应用这个,你可以使用 and 操作符合并媒体属性:

CSS Code复制内容到剪贴板

  1. (min-width: 700px) and (orientation: landscape) { ... }  

现在上面的媒体查询仅在可视区域宽度不小于700像素并在在横屏时有效。如果,你仅想再电视媒体上应用,你可以使用 and 操作符合并媒体属性:

CSS Code复制内容到剪贴板

  1. @media tv and (min-width: 700px) and (orientation: landscape) { ... }  

现在,上面媒体查询仅在电视媒体上,可视区域不小于700像素宽度并且是横屏时有效。

逗号分隔列表

媒体查询中使用逗号分隔效果等同于 or 逻辑操作符。当使用逗号分隔的媒体查询时,如果任何一个媒体查询返回真,样式就是有效的。逗号分隔的列表中每个查询都是独立的,一个查询中的操作符并不影响其它的媒体查询。这意味着逗号媒体查询列表能够作用于不同的媒体属性、类型和状态。

例如,如果你想在最小宽度为700像素或是横屏的手持设备上应用一组样式,你可以这样写:

CSS Code复制内容到剪贴板

  1. @media (min-width: 700px), handheld and (orientation: landscape) { ... }  

如上文,如果是一个800像素宽的屏幕设备,媒体语句将会返回真,因为第一部分相当于 @media all and (min-width: 700px) 将会应用于该设备并且返回真,尽管我的屏幕媒体类型并不与第二部分的手持媒体类型相符。同样地,如果我是一个500像素宽的横屏手持设备,尽管第一部分因为宽度问题而不匹配,第二部分仍会成功,因此整个媒体查询返回真。

not

not 关键字应用于整个媒体查询,在媒体查询为假时返回真 (比如 monochrome 应用于彩色显示设备上或一个600像素的屏幕应用于 min-width: 700px 属性查询上 )。在逗号媒体查询列表中 not 仅会否定它应用到的媒体查询上而不影响其它的媒体查询。 not 关键字仅能应用于整个查询,而不能单独应用于一个独立的查询。例如,not 在下面的查询中最后被计算:

CSS Code复制内容到剪贴板

  1. @media not all and (monochrome) { ... }  

等价于:

CSS Code复制内容到剪贴板

  1. @media not (all and (monochrome)) { ... }  

而不是:

CSS Code复制内容到剪贴板

  1. @media (not all) and (monochrome) { ... }  

另一个例子,看下面的媒体查询:

CSS Code复制内容到剪贴板

  1. @media not screen and (color), print and (color)  

等价于:

CSS Code复制内容到剪贴板

  1. @media (not (screen and (color))), print and (color)  

only

only 关键字防止老旧的浏览器不支持带媒体属性的查询而应用到给定的样式:

CSS Code复制内容到剪贴板

  1. <link rel="stylesheet" media="only screen and (color)" href="example.css" />  

伪范式

CSS Code复制内容到剪贴板

  1. media_query_list: <media_query> [, <media_query> ]*   

  2. media_query: [[only | not]? <media_type> [ and <expression> ]*]   

  3.   | <expression> [ and <expression> ]*   

  4. expression: ( <media_feature> [: <value>]? )   

  5. media_type: all | aural | braille | handheld | print |   

  6.   projection | screen | tty | tv | embossed  

  7. media_feature: width | min-width | max-width  

  8.   | height | min-height | max-height  

  9.   | device-width | min-device-width | max-device-width  

  10.   | device-height | min-device-height | max-device-height  

  11.   | aspect-ratio | min-aspect-ratio | max-aspect-ratio   

  12.   | device-aspect-ratio | min-device-aspect-ratio | max-device-aspect-ratio   

  13.   | color | min-color | max-color  

  14.   | color-index | min-color-index | max-color-index   

  15.   | monochrome | min-monochrome | max-monochrome   

  16.   | resolution | min-resolution | max-resolution   

  17.   | scan | grid  

媒体查询是大小写不敏感的。包含未知媒体类型的查询通常返回假。

注意: 表达式需要用圆括号。没有使用的会引起错误。

媒体查询可检测的特性
width:视口宽度
height:视口高度
device-width:渲染表面的宽度(对我们来说,就是设备屏幕的宽度)
device-height:渲染表面的高度(对我们来说,就是设备屏幕的高度)
orientation:检查设备处于横向还是纵向
aspect-ratio:基于视口宽度和高度的宽高比。一个 16∶9 比例的显示屏可以这样定义 aspect-ratio: 16/9
device-aspect-ratio:和 aspect-ratio 类似,基于设备渲染平面宽度和高度的宽高比
color:每种颜色的位数。例如 min-color: 16 会检测设备是否拥有 16 位颜色。
color-index:设备的颜色索引表中的颜色数。值必须是非负整数。
monochrome:检测单色帧缓冲区中每像素所使用的位数。值必须是非负整数,如
monochrome: 2
resolution:用来检测屏幕或打印机的分辨率,如 min-resolution: 300dpi。还可以接受每厘米像素点数的度量值,如 min-resolution: 118dpcm。
scan:电视机的扫描方式,值可设为 progressive(逐行扫描)或 interlace(隔行扫描)。如 720p HD 电视(720p 的 p 即表明是逐行扫描)匹配 scan: progressive,而 1080i HD 电视(1080i 中的 i 表明是隔行扫描)匹配 scan: interlace。
grid:用来检测输出设备是网格设备还是位图设备。
除 scan 和 grid 之外,都可使用 min 和 max 前缀来创建一个查询范围,如min-width:200px、max-width:360px。

利用viewport禁止用户缩放

CSS Code复制内容到剪贴板

  1. <meta name="viewport" content="width=device-width,initial-scale=1.0" />  

meta标签表示:强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览; 尤其要注意的是content里多个属性的设置一定要用分号+空格来隔开,如果不规范将不会起作用。
width viewport 宽度(数值/device-width)

height viewport 高度(数值/device-height)

initial-scale 初始缩放比例

maximum-scale 最大缩放比例

minimum-scale 最小缩放比例

user-Scalable 是否允许用户缩放(yes/no)

minimal-ui iOS 7.1 beta 2 中新增属性(注意:iOS8 中已经删除),可以在页面加载时最小化上下状态栏。

注意:关于viewport,还有一个很重要的概念是:iphone 的safari 浏览器完全没有滚动条,而且不是简单的“隐藏滚动条”, 是根本没有这个功能。iphone 的safari 浏览器实际上从一开始就完整显示了这个网页,然后用viewport 查看其中的一部分。 当你用手指拖动时,其实拖的不是页面,而是viewport。浏览器行为的改变不止是滚动条,交互事件也跟普通桌面不一样。

上述内容就是CSS3媒体查询MediaQueries怎么用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网html频道。

--结束END--

本文标题: CSS3媒体查询MediaQueries怎么用

本文链接: https://www.lsjlt.com/news/81424.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

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

下载Word文档
猜你喜欢
  • CSS3媒体查询MediaQueries怎么用
    本篇文章为大家展示了CSS3媒体查询MediaQueries怎么用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。语法 媒体查询包含了一个媒体类型 和如CSS3规范中...
    99+
    2024-04-02
  • css3中media媒体查询器怎么用
    今天小编给大家分享一下css3中media媒体查询器怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起...
    99+
    2024-04-02
  • CSS3媒体查询代码怎么写
    这篇文章主要介绍“CSS3媒体查询代码怎么写”,在日常操作中,相信很多人在CSS3媒体查询代码怎么写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS3媒体查询代码怎么写”...
    99+
    2024-04-02
  • CSS3中媒体查询的示例分析
    这篇文章将为大家详细讲解有关CSS3中媒体查询的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   媒体查询   CSS3中的媒体查询,它可以根据用户设备的尺...
    99+
    2024-04-02
  • css3中媒体查询的语法简介
    小编给大家分享一下css3中媒体查询的语法简介,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!媒体查询的语法组成是“@media not|only mediatype and (expressions) {CSS代码...;...
    99+
    2023-06-14
  • CSS3中多媒体查询的示例分析
    小编给大家分享一下CSS3中多媒体查询的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   CSS2多媒体查询:  ...
    99+
    2024-04-02
  • 媒体查询是css3新增属性的吗
    本文小编为大家详细介绍“媒体查询是css3新增属性的吗”,内容详细,步骤清晰,细节处理妥当,希望这篇“媒体查询是css3新增属性的吗”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
    99+
    2024-04-02
  • CSS3实现媒体查询的示例分析
    这篇文章主要介绍CSS3实现媒体查询的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!esponsive Web Design将已有的开发技巧(弹性网格布局、弹性图片、媒体和媒...
    99+
    2024-04-02
  • html5媒体查询语句怎么使用
    本篇内容主要讲解“html5媒体查询语句怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“html5媒体查询语句怎么使用”吧!html5媒体查询语句是由媒体类型和一个或多个检测媒体特性的条件...
    99+
    2023-07-05
  • 怎么在JavaScript中使用媒体查询
    本文小编为大家详细介绍“怎么在JavaScript中使用媒体查询”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么在JavaScript中使用媒体查询”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。前言说起媒体查...
    99+
    2023-07-05
  • css媒体查询失效怎么办
    本教程操作环境:Windows10系统、css3版、DELL G3电脑css媒体查询失效怎么办? CSS @media媒体查询无效用@media媒体查询写的CSS样式无效?1.问题用@media媒体查询写的CSS样式对html无效。2.解决...
    99+
    2023-05-14
    媒体查询 css
  • css3媒体查询的语法关键字是哪个
    这篇文章将为大家详细讲解有关css3媒体查询的语法关键字是哪个,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 css3媒体查询的语法关键字是“...
    99+
    2024-04-02
  • CSS3媒体查询响应式布局bootstrap框架的使用
    这篇文章主要介绍CSS3媒体查询响应式布局bootstrap框架的使用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!媒体设备类型使用详解:<!DOCTYPE html><html ...
    99+
    2023-06-08
  • 媒体查询@media如何使用
    这篇文章主要讲解了“媒体查询@media如何使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“媒体查询@media如何使用”吧...
    99+
    2024-04-02
  • bootstrap媒体查询的作用是什么
    这期内容当中小编将会给大家带来有关bootstrap媒体查询的作用是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在Bootstrap中,媒体查询可以通过屏幕的大小来...
    99+
    2024-04-02
  • css3媒体查询中device-width和width的区别有哪些
    这篇文章给大家分享的是有关css3媒体查询中device-width和width的区别有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.device-width定义:定义输出设备的屏幕可见宽度。不管你的网页...
    99+
    2023-06-08
  • CSS媒体查询新增的特性怎么使用
    这篇文章主要介绍了CSS媒体查询新增的特性怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS媒体查询新增的特性怎么使用文章都会有所收获,下面我们一起来看看吧。CSS @media 规范prefers-...
    99+
    2023-07-04
  • html5媒体查询语句是什么
    本教程操作环境:Windows10系统、HTML5版、DELL G3电脑html5媒体查询语句是什么?HTML5媒体查询媒体查询- 什么是媒体查询?媒体查询可以让我们根据设备显示器的特性(如视口宽度、屏幕比例、设备方向:横向或纵向)为其设定...
    99+
    2023-05-14
    媒体查询 html5
  • CSS媒体查询不生效怎么解决
    如果CSS媒体查询不生效,可以尝试以下解决方法:1. 检查媒体查询的语法和语义是否正确。确保媒体查询的条件和CSS规则之间没有语法错...
    99+
    2023-10-12
    CSS
  • 怎么利用媒体查询进行web响应式设计
    本篇内容主要讲解“怎么利用媒体查询进行web响应式设计”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么利用媒体查询进行web响应式设计”吧!首先看个实例在你开...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作