We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
传统的项目开发中,我们只会用到px、%、em这几个单位,它可以适用于大部分的项目开发,且拥有比较良好的兼容性
px
%
em
从CSS3开始,浏览器对计量单位的支持又提升到了另外一个境界,新增了rem、vh、vw等一些新的计量单位
CSS3
rem
vh
vw
利用这些新的单位开发出比较良好的响应式页面,适应多种不同分辨率的终端,包括移动设备等
px,表示像素,所谓像素就是呈现在我们显示器上的一个个小点,每个像素点都是大小等同的,所以像素为计量单位被分在了绝对长度单位中
有些人会把px认为是相对长度,原因在于在移动端中存在设备像素比,px实际显示的大小是不确定的
这里之所以认为px为绝对单位,在于px的大小和元素的其他属性无关
em是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸(1em = 16px)
1em = 16px
为了简化font-size的换算,我们需要在css中的body选择器中声明font-size= 62.5%,这就使em值变为16px*62.5% = 10px
font-size
css
body
font-size= 62.5%
16px*62.5% = 10px
这样12px = 1.2em, 10px = 1em, 也就是说只需要将你的原来的px数值除以10,然后换上em作为单位就行了
12px = 1.2em
10px = 1em
10
特点:
16px
举个例子
<div class="big"> 我是14px=1.4rem<div class="small">我是12px=1.2rem</div> </div>
样式为
<style> html {font-size: 10px; } /* 公式16px*62.5%=10px */ .big{font-size: 1.4rem} .small{font-size: 1.2rem} </style>
这时候.big元素的font-size为14px,而.small元素的font-size为12px
.big
14px
.small
12px
rem,相对单位,相对的只是HTML根元素font-size的值
HTML
同理,如果想要简化font-size的转化,我们可以在根元素html中加入font-size: 62.5%
html
font-size: 62.5%
html {font-size: 62.5%; } /* 公式16px*62.5%=10px */
这样页面中1rem=10px、1.2rem=12px、1.4rem=14px、1.6rem=16px;使得视觉、使用、书写都得到了极大的帮助
1rem=10px
1.2rem=12px
1.4rem=14px
1.6rem=16px;
vw,就是根据窗口的宽度,分成100等份,100vw就表示满宽,50vw就表示一半宽。(vw始终是针对窗口的宽),同理,vh则为窗口的高度
100
100vw
50vw
这里的窗口分成几种情况:
像vw、vh,比较容易混淆的一个单位是%,不过百分比宽泛的讲是相对于父元素:
position: absolute;
position: fixed;
ViewPort
1em
root em
The text was updated successfully, but these errors were encountered:
No branches or pull requests
前言
传统的项目开发中,我们只会用到
px
、%
、em
这几个单位,它可以适用于大部分的项目开发,且拥有比较良好的兼容性从
CSS3
开始,浏览器对计量单位的支持又提升到了另外一个境界,新增了rem
、vh
、vw
等一些新的计量单位利用这些新的单位开发出比较良好的响应式页面,适应多种不同分辨率的终端,包括移动设备等
正文
一、px
px
,表示像素,所谓像素就是呈现在我们显示器上的一个个小点,每个像素点都是大小等同的,所以像素为计量单位被分在了绝对长度单位中有些人会把
px
认为是相对长度,原因在于在移动端中存在设备像素比,px
实际显示的大小是不确定的这里之所以认为
px
为绝对单位,在于px
的大小和元素的其他属性无关二、em
em
是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸(1em = 16px
)为了简化
font-size
的换算,我们需要在css
中的body
选择器中声明font-size= 62.5%
,这就使em
值变为16px*62.5% = 10px
这样
12px = 1.2em
,10px = 1em
, 也就是说只需要将你的原来的px
数值除以10
,然后换上em
作为单位就行了特点:
em
的值并不是固定的em
会继承父级元素的字体大小em
是相对长度单位。相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对于浏览器的默认字体尺寸16px
举个例子
样式为
这时候
.big
元素的font-size
为14px
,而.small
元素的font-size
为12px
三、rem
rem
,相对单位,相对的只是HTML
根元素font-size
的值同理,如果想要简化
font-size
的转化,我们可以在根元素html
中加入font-size: 62.5%
这样页面中
1rem=10px
、1.2rem=12px
、1.4rem=14px
、1.6rem=16px;
使得视觉、使用、书写都得到了极大的帮助特点:
rem
单位可谓集相对大小和绝对大小的优点于一身em
不同的是rem
总是相对于根元素,而不像em
一样使用级联的方式来计算尺寸四、vh、vw
vw
,就是根据窗口的宽度,分成100
等份,100vw
就表示满宽,50vw
就表示一半宽。(vw
始终是针对窗口的宽),同理,vh
则为窗口的高度这里的窗口分成几种情况:
像
vw
、vh
,比较容易混淆的一个单位是%
,不过百分比宽泛的讲是相对于父元素:position: absolute;
的元素是相对于已定位的父元素position: fixed;
的元素是相对于ViewPort
(可视窗口)总结
font-size
按自身来计算,整个页面内1em
不是一个固定的值root em
, 相对根节点html
的字体大小来计算参考文献
The text was updated successfully, but these errors were encountered: