【CSS_01】前端开发中使用到尺寸单位

本文主要介绍前端的尺寸问题:

  • em 和 rem
  • vw 和 vh

em 和 rem

首先看如下代码和对应代码的运行结果:

示例1:第一个em使用例子。

html 复制代码
<style>
p{
    border: 1px solid;
    height: 12em;
}
</style>
<body>
<p></p>
</body>

此时F12打开控制台可以看到如下:16 * 12 = 192。

修改html代码如下:

html 复制代码
<style>
    body{
        text-align: center;
        padding-left: 30%;
    }
    p{
        border: 1px solid;
        height: 12em;
        width: 100px;
    }
    div{
        font-size: 10px;
        height: 12em;
        border: 1px solid;
        margin-top: 10px;
        width: 100px;
    }
</style>
<body>
    <p> 我是 p</p>
    <div>
        我是div
    </div>
</body>

此时的效果图如下所示:

此时div的结构图如下图:

对比此图和第一幅图可以发现都是12em但是两者的高度不是一样的!

此时在div中添加一个span标签,并添加如下的样式:

html 复制代码
    span{
        background-color: red;
        width: 8em;
        display: inline-block;
    }

此时的运行效果如下图:

可以发现span的宽度为8em = 8 * 10px = 80px; 从上面的内容就可以得到如下的结论:

  • em是一个相对长度单位,相对于当前对象内的字体尺寸。如第二个例子所示。
  • em会继承父元素的字体大小(如第三个例子所示)。
  • 如果当前元素没有设置其大小,则相对于浏览器的默认字体尺寸(16px)。如第一个例子所示。

rem 也是一个相对长度单位,不过是相对于root元素而言。这个root元素就是html标签元素!代码如下:

html 复制代码
    <style>
        html{
            font-size: 20px;
        }
        div{
            height: 10rem;
            width: 10rem;
            border: 1px solid;
        }
    </style>
    <body>
        <div>
            使用rem进行计算
        </div>
    </body>

此时看下图效果如下图:

vw 和 vh

vw(view width)和vh(view height)是前端开发中的一个动态单位,是一个相对于当前网页视口的单位。它会将一个网页的宽和高都分为100份,一个vh(网页高度的百分之一) or vw(网页宽度的百分之一) 就代表占据当前网页大小的1/100

html 复制代码
    <style>
        div{
            width: 50vw;
            height: 50vh;
            background-color: #c60023;
        }
    </style>
    ​
    <body>
        <div>
            vw和vh
        </div>
    </body>

此时运行结果如下图:

相关推荐
逝水无殇3 小时前
HTML 文本格式化详解:掌握 <strong>、<em>、<mark>、<del> 等常用标签
前端·javascript·html
特立独行的猫a3 小时前
DeepSeek Harness插件和工具的区别介绍及开发入门指南
前端·ai·agent·插件·deepseek·harness
小新讲网安3 小时前
HTTP请求走私攻击实战:CL.TE与TE.CL绕过前端服务器全解析
服务器·前端·网络·web安全·http·架构·漏洞
风骏时光牛马3 小时前
AI办公系统异常事件复盘分析
前端
console.log('npc')3 小时前
React 19 + Vite 企业级前端项目:从零搭建到规范交付
前端·react.js·前端框架
程序员黑豆4 小时前
Java字符串常量池完全指南:原理、intern()方法与性能优化最佳实践
java·前端·ai编程
光影少年4 小时前
react离线缓存、图片缓存方案
开发语言·前端·javascript·react native·react.js·缓存·前端框架
Canace4 小时前
笔记本都合上了,Claude 为什么还能在手机上执行电脑上装的技能?
前端·人工智能·ai编程
cyadyx5 小时前
Vite 比 Webpack 构建效率更高
前端·webpack·node.js·vite
mCell6 小时前
AI 时代 SVG 画图的潜力
前端·agent·svg