细说移动端 经典的REM布局 与 新秀VW布局

 

1. 前言

2. 基本概念

3. REM布局

4. VW布局

 实现单边边框1px

 实现多边边框1px

    实现边框圆角

 实现容器固定纵横比

5. REM + VW布局

6. 对比选择

    方案选择

    食用方式

 

一、前言

说到前端页面的布局方案,可以从远古时代的Table布局说起,然后来到 DIV+CSS布局,之后有了Float布局,Flex布局,Column布局,Grid布局等等。

而另一方面,还有一些 布局概念

1. 静态布局

直接使用px作为单位

2. 流式布局

宽度使用%百分比,高度使用px作为单位

3. 自适应布局

创建多个静态布局,每个静态布局对应一个屏幕分辨率范围。使用 @media媒体查询来切换多个布局

4. 响应式布局

通常是糅合了流式布局+弹性布局,再搭配媒体查询技术使用

5. 弹性布局

通常指的是rem或em布局。rem是相对于html元素的font-size大小而言的,而em是相对于其父元素(非font-size的是相对于自身的font-size)

 

本文不对这些概念做太多的解释说明,主要记录一下整理过程中比较重要的点

如今移动端布局中免不了要支持高清设备,机型也比较复杂,需要一套比较完善的布局方案来支持(在整体结构上解决多设备宽的适配问题)。

淘宝的 Flexible 让REM布局得以流行开来,而此Flexible实现也有一些不足,此外,也涌现出了多种实现REM布局的方案

比如直接使用  html{ font-size:625%; } 基准值,配合JS来设置根元素字体大小

或者使用媒体查询来设置根元素字体大小

复制代码
  @media screen and (min-width: 320px) {         html,body,button,input,select,textarea {             font-size:12px!important;        }     }      @media screen and (min-width: 374px) {         html,body,button,input,select,textarea {             font-size:14px!important;        }     }
复制代码

 

但使用rem来布局的方案并不太正统,它有一些hack的特点

比较规范的方式是使用vw单位,随之而来的就是后起之秀 VW布局

 

花了一些时间整理了REM布局和VW布局在实际页面中是如何运用的,如果你有兴趣,就往下看吧~

项目地址,欢迎围观~

 

二、基本概念

物理像素(physical pixel)

物理像素又被称为设备像素,它是显示设备中一个最微小的物理部件。每个像素可以根据操作系统设置自己的颜色和亮度。正是这些设备像素的微小距离欺骗了我们肉眼看到的图像效果。

设备独立像素(density-independent pixel)

设备独立像素也称为密度无关像素,可以认为是计算机坐标系统中的一个点,这个点代表一个可以由程序使用的虚拟像素(比如说CSS像素),然后由相关系统转换为物理像素。

CSS像素

CSS像素是一个抽像的单位,主要使用在浏览器上,用来精确度量Web页面上的内容。一般情况之下,CSS像素称为与设备无关的像素(device-independent pixel),简称DIPs。

屏幕密度

屏幕密度是指一个设备表面上存在的像素数量,它通常以每英寸有多少像素来计算(PPI)。

设备像素比(device pixel ratio)

设备像素比简称为dpr,其定义了物理像素和设备独立像素的对应关系。它的值可以按下面的公式计算得到:

关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信