文章详情

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

请输入下面的图形验证码

提交验证

短信预约提醒成功

CSS3媒体查询代码怎么写

2024-04-02 19:55

关注

这篇文章主要介绍“CSS3媒体查询代码怎么写”,在日常操作中,相信很多人在CSS3媒体查询代码怎么写问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS3媒体查询代码怎么写”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

  CSS3媒体查询:

  语法:

  <media_query_list>:<media_query>[,<media_query>]

  <media_query>:only|not <mediaType> and <expression>[ and <expression>]

  <expression>:<mediaFeature>:<value>

  关键词“not”取补集,“only”不再推荐使用(not,only都是可选的),“,”用法同CSS选择器中的逗号用法,表示一种合写。

  @media not|only mediaType and (mediaFeature) {

  CSS Codes;

  }

  或

  <link rel="stylesheet" media="not|only mediaType and (mediaFeature)" href="">

  或

  <style type="text/css" media="not|only mediaType and (mediaFeature)">

  @import url("mystylesheet.css");

  </style>

  及:(这种可以在style标签里使用,也可以在一个css文件里使用)

  @media not|only mediaType and (mediaFeature){

  选择器{

  属性:属性值;

  }

  }

  媒体查询大部分都接受前缀min或max,表示大于等于或小于等于。(切记min和max对应的顺序,不要被表象所误导)

  and前后必须留空格,例如:(浏览器不产生任何效果)

  @media screen and(max-width:600px){

  h3{

  color:red

  }

  }

  媒体类型:(一些类型已从CSS3删除)

  all --用于所有设备

  print --用于打印机及打印预览

  screen --用于电脑、平板、手机屏幕(一般只用这个和all)

  speech --用于屏幕阅读器等发声设备

  媒体特性:

  width --页面可见区域的宽(一般只用这个和device-width)

  height --页面可见区域的高

  device-width --设备的屏幕可见区域宽

  device-height --设备的屏幕可见区域高

  aspect-ratio --设备的width与height的比

  device-aspect-ratio --设备的device-width与device-height的比

  resolution --设备的分辨率,如96dpi, 300dpi,118dpcm

  orientation --定义height是否大于或等于width,值portrait代表是,landscape代表否

  以上参数(除最后一个)均可以加max-或min-前缀。

  前四个参数比较常用,单位都是CSS的绝对单位,包括px em mm cm等。

  部分用法:

  @media screen and (orientation:portrait){

  h3{

  color:red;

  }

  }

  @media screen and (max-aspect-ratio:4/3){

  h3{

  color:red;

  }

  }

  @media screen and (min-resolution:96dpi){

  h3{

  color:red;

  }

  }

  全部参数详见:

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

  @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;

  }

  使用JS动态查询媒体特征:

  window.matchMedia()方法接受一个media_query语句的字符串作为参数,返回一个MediaQueryList对象,该对象有media和matches两个属性。

  media:返回所查询的media_query语句字符串

  matches:返回一个布尔值,表示当前环境是否匹配查询语句

  注意:如果matchMedia无法解析media_query参数,matches属性返回的总是false,而不是报错

  例如:

  var result=window.matchMedia("screen (min-width: 600px)");

  console.log(result.media); //"(min-width: 600px)"

  console.log(result.matches); //true

  matchMedia方法返回的MediaQueryList对象有两个方法,用来监听事件:addListener和removeListener

  mql.addListener(mqCallback);

  mql.removeListener(mqCallback);

  注意,只有mediaQuery查询结果发生变化时,才调用指定的回调函数mqCallback,所以,如果想要mediaQuery查询未变化时,就显示相应效果,需要提前调用一次函数。

  下面这个例子是当页面宽度小于1000px时,页面背景颜色为品红色;否则为淡蓝色:

  var mql=window.matchMedia("(min-width: 1000px)");//mql=media query list

  function mqCallback(mql){

  if (mql.matches){

  document.body.background='pink';

  }else{

  document.body.background='lightblue';

  }

  }

  mqCallback(mql);

  mql.addListener(mqCallback);

  //注意,addListener触发条件是每次改变matches值时,只有true<->false才是叫做改变,true<->true或false<->false不算改变也不会触发addListener。

到此,关于“CSS3媒体查询代码怎么写”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

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

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

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯