前言

本文主要记录了媒体查询的基本概念,包含媒体查询的逻辑关系、媒体特征表达式、常用媒体尺寸以及移动端常用单位。

媒体查询

通过查询当前属于哪种设备, 让网页能够在不同的设备下正常渲染显示。

媒体类型

  • all (所有的设备);
  • print (打印设备);
  • screen (电脑屏幕,平板电脑,智能手机);
  • speech 屏幕阅读器等发声设备中加载;
     	
     	/*  and 表示 && screen 和 (min-width: 900px) 都满足时样式才有效*/
        @media screen and (min-width: 900px){
            body{
                background-color: #fff;
            }
        }

媒体查询的逻辑关系

  • and(&&);
  • (||);
  • not (!);
  • only (在不支持媒体查询的浏览器中不添加样式);
   @media screen and (min-width: 900px),screen and (max-width: 1200px){
            body{
                background-color: #fff;
            }
        }

注意:或后面要写媒体类型,没写媒体类型默认值为 all

媒体特征表达式

  • width 输出设备中的页面可见区域宽度;
  • max-width 输出设备中的页面最大可见区域宽度;
  • min-width 输出设备中的页面最小可见区域宽度;
  • -webkit-device-pixel-ratio输出设备的屏幕可见宽度与高度的比率;
  • -webkit-min-device-pixel-ratio 输出设备的屏幕可见宽度与高度的最小比率;
  • -webkit-max-device-pixel-ratio 输出设备的屏幕可见宽度与高度的最大比率;
  • orientation:portrait(竖屏) | landscape(横屏);
       @media (-webkit-device-pixel-ratio:2){
            body{
                background-color: #fff;
            }
        }

常用媒体尺寸

PC优先

	@media screen and (max-width:1200px){  
	}
	@media screen and (max-width:992px){ 
	}
	@media screen and (max-width:768px) {
	}
	@media screen and (max-width:576px){ 
	}

移动优先

@media (min-width: 576px) {
}
@media (min-width: 768px) {
}
@media (min-width: 992px) {
}
@media (min-width: 1200px) {

}

移动端常用单位

px

px绝对长度单位,也就是我们实际开发中最常用的单位。

em

==em是相对长度单位,相对于自身的font-size属性进行计算==;

如果当前元素未设置font-size属性,则从父元素上继承fontsize属性。

	<div>
        <p>em</p>
    </div>
        html{
            font-size: 14px;
        }
        div{
            font-size: 15px;
        }
        p{
            font-size: 20px;
            line-height: 1em;
        }

1em * 20px = 20px 在这里插入图片描述

rem

rem是CSS3新增的一个相对长度单位,相对于根元素(html)的font-size进行计算。

	<div>
        <p>rem</p>
    </div>
        html{
            font-size: 14px;
        }
        div{
            font-size: 15px;
        }
        p{
            font-size: 20px;
            line-height: 1rem;
        }

1rem * 14px = 14px 在这里插入图片描述

vw/vh

vw表示视口的宽度,1vw表示视口宽度的1%;

vh表示视口的高度,1vh表示视口高度的1%;

本文到此结束

如果大家还有什么其他想法,欢迎在评论区交流!