本文已参与「新人创作礼」活动,—起开启掘金创作之路。
CSS中单位的知识点整理
浏览器中默认的字体大小为16px,最小的字体大小是12px,不能设置一个比12像素还要小的字体,当然除了 0px (为0时px 可以省略);如果设置了一个比12px更小的字体,则该字体会被自动设置为12px。
常见的几种单位
px
px (像素):绝对长度单位,,由一个个的小点点构成,不同屏幕像素大小不同,像素越小屏幕会越清晰,这是相对于物理像素 (显示器屏幕的分辨率)。
rpx
rpx:可以根据屏幕宽度,进行自适应调整,是微信小程序解决自适应屏幕的单位。
在微信小程序中规定的屏幕宽度为 750rpx。
可以使用rpx 来控制元素和字体的大小,以此来实现微信小程序可以在不同尺寸的屏幕下实现自动适配。
1rpx = 0.5px<====>1px=2rpx;- 比如屏幕宽度为
375px,则共有750个物理像素,也就是750rpx=375px=750物理像素,1rpx=0.5px=1物理像素。
百分比
百分比:可以将属性值设置为相对于其父元素属性的百分比。
比如给子元素设置font-size=50%,则该子元素的元素大小等于父元素的font-size*50%。
em
em :相对单位,相对于当前元素的字体大小 (font-size) 来计算的 。
1em = 1倍父元素font-size的值;2em = 2倍父元素font-size的值;- 比如当前元素的
font-size=14px、width=5em,则width是5*14px,但如果没有设置此元素的font-size,则会使用该元素的父级的font-size; - 又比如当前元素的
font-size=0.75em,父元素的font-size=16px,则当前元素的font-size是0.75*16px=12px,即当前元素的大小是所继承的0.75倍; - 使用
em时,当字体大小发生改变时,em也会随之改变; - 在设置字体相关的样式时,会经常使用
em。
rem
rem:相对单位,可以理解为 root em ,即是相对于根元素的字体大小来计算的。
在em中如果遇到嵌套的层次比较深的,就不能第一时间知道每个子元素自身等于好多px,而rem则改正了这个问题,它永远是以 根元素的字体大小作为依据。
html的自身大小,默认是16px;1rem = 1html的字体大小 ==>1rem = 16px。
vw和vh
vw:表示的是视口的宽度(viewport width)。
vh:表示的是视口的高度(viewport height)。
它们一般在响应式网页使用。
1vw = 1/100 (1%)的视口宽度;1vh = 1/100 (1%)的视口高度;vw/vh这两个单位永远相当于视口的宽高进行计算;100vw=750px(设计图的像素)100 / 750 = 0.1333333333333333vw = 1px;- 如果视口宽高为
1024*768,则1vw=10.24px、1vh=7.68px。
vmin和vmax
vmin:vw和vh中较小的那个。
vmax:vw和vh中较大的那个。
- 最小的那个被均分为100单位的
vmin(即vm); - 比如浏视口宽高为
1200*900,则取最小的高度1vm = 900px/100 = 9px。
其它用的很少的单位
绝对长度
定义:不会因为其它元素的尺寸变化而变化。
cm:厘米mm:毫米q:1/4毫米in:英寸 (1in = 96px = 2.54cm)pc:十二点活字 (1pc = 12 pt)pt:点 (1pt = 1/72in)
相对长度
定义:没有一个相对固定的度量值,而是根据其它元素的尺寸来决定自身的相对值。
ex:依赖于英文字母小 x的高度ch:数字 0的宽度