CSS 单位

CSS 单位定义了网页元素的尺寸、长度和度量。例如,

p {
    width: 300px;
    background-color: greenyellow;
}

浏览器输出

CSS Units Example

在此,我们使用像素 (px) 长度单位指定了段落的 width 值。

有多种 CSS 属性,如 widthpaddingmargin 等,它们接受各种单位的度量值。

CSS 单位主要分为绝对单位和相对单位。


绝对单位

绝对单位是恒定的度量值,无论设备的屏幕尺寸如何,它们都保持不变。

有以下几种绝对单位:

  • 像素 (px):相当于屏幕上的一个像素。例如,width: 100px
  • 英寸 (in):对应物理尺寸的一英寸。例如,height: 1in
  • 厘米 (cm):相当于一厘米。例如,margin: 2cm
  • 毫米 (mm):相当于一毫米。例如,padding: 5mm
  • 点 (pt):等于一点(1/72 英寸)。例如,font-size: 12pt

绝对单位用于需要特定尺寸的元素,例如按钮、图像和徽标。

注意:首选使用绝对单位来提供特定且一致的尺寸,以确保跨设备的统一显示。


相对单位

相对单位是随屏幕尺寸或页面上其他元素而变化的度量值。

有以下几种相对单位:

  • em (em):相对于父元素的字体大小。例如,font-size: 1em 会随着父元素的字体大小而缩放。

如果父元素的字体大小为 16px,则子元素的 font-size:1em 等于 16px

  • rem (rem):相对于根元素的字体大小,即设置给 HTML 元素的大小。例如,margin: 2rem 会根据根字体大小进行调整。
  • 视口宽度 (vw):相对于视口宽度。例如,width: 50vw 会适应视口宽度的 50%。
  • 视口高度 (vh):相对于视口高度。例如,height: 100vh 会占据整个视口(屏幕)的高度。
  • 百分比 (%):相对于容器元素。例如,padding: 5% 会根据父容器的大小进行缩放。

当我们需要在各种设备上实现灵活的尺寸和响应式设计时,首选相对单位。

例如,

body {
    height: 80vh;
}

这会将 body 元素的高度设置为设备屏幕(视口)总高度的 80%


示例:绝对单位

让我们来看一个使用像素 (px) 的示例。

<!DOCTYPE html>
<html lang="en">

    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>CSS Pixels</title>
        <link rel="stylesheet" href="style.css" />
    </head>

    <body>
        <div class="box"></div>
    </body>

</html>
div.box {
    width: 100px;
    height: 100px;
    background-color: red;
}

浏览器输出

CSS Pixels Example

在上面的示例中,div 元素的 widthheight 被固定设置为 100 像素,而与屏幕尺寸无关。


示例:相对单位

让我们来看一个使用百分比 (%) 的示例。

<!DOCTYPE html>
<html lang="en">

    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <link rel="stylesheet" href="style.css" />
        <title>CSS Percentage</title>
    </head>

    <body>
        <div class="parent">
            <div class="child">Child Element</div>
            Parent Element
        </div>
    </body>
</html>
div.parent {
    width: 400px;
    height: 100px;
    background-color: skyblue;
    border: 2px solid black;
}

div.child {
    width: 50%;
    height: 50%;
    background-color: orange;
}

浏览器输出

CSS Percentage Example

在上面的例子中:

div.child {
    width: 50%;
    height: 50%;
}

将子 div 的 widthheight 设置为父 div 元素的 50%

这意味着子元素将始终是父元素宽度的 50% 且高度也是父元素高度的 50%

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战