CSS中单位的知识点整理

390 阅读3分钟

本文已参与「新人创作礼」活动,—起开启掘金创作之路。

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,则width5*14px,但如果没有设置此元素的font-size,则会使用该元素的父级的font-size
  • 又比如当前元素的 font-size=0.75em,父元素的 font-size=16px ,则当前元素的 font-size0.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

vminvwvh较小的那个。

vmaxvwvh较大的那个。

  • 最小的那个被均分为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 的宽度