分享7个你可能不认识的CSS单位

CSS 单位是指在 CSS 中用来表示长度、宽度、高度、字体大小等的单位。常见的 CSS 单位有 px、em、rem、vh、vw 等。除了这些常见的单位,还有一些不太常见的单位,本攻略将分享 7 个你可能不认识的 CSS 单位,包括基本概念、实现方法、注意事项和示例说明。

1. ch

ch 是 CSS 中的一个相对单位,表示数字“0”的宽度。例如,如果字体大小为 16px,那么一个 ch 的宽度就是 16px。

实现方法

div {
  font-size: 16px;
  width: 10ch;
}

上述代码中,使用 ch 单位来设置 div 元素的宽度为 10 个数字“0”的宽度。

注意事项

  • ch 单位的兼容性不太好,不建议在生产环境中使用。

示例说明

<div class="container">
  <div class="box">1234567890</div>
  <div class="box">12345678901234567890</div>
</div>
.container {
  font-size: 16px;
}

.box {
  width: 10ch;
  height: 50px;
  background-color: #ccc;
  margin-bottom: 10px;
}

上述代码中,使用 ch 单位来设置 .box 元素的宽度为 10 个数字“0”的宽度,可以看到,第一个 .box 元素的宽度为 160px,第二个 .box 元素的宽度为 320px。

2. ex

ex 是 CSS 中的一个相对单位,表示小写字母“x”的高度。例如,如果字体大小为 16px,那么一个 ex 的高度就是 8px。

实现方法

div {
  font-size: 16px;
  height: 10ex;
}

上述代码中,使用 ex 单位来设置 div 元素的高度为 10 个小写字母“x”的高度。

注意事项

  • ex 单位的兼容性不太好,不建议在生产环境中使用。

示例说明

<div class="container">
  <div class="box">x</div>
  <div class="box">xxxxxxxxxx</div>
</div>
.container {
  font-size: 16px;
}

.box {
  width: 50px;
  height: 10ex;
  background-color: #ccc;
  margin-bottom: 10px;
}

上述代码中,使用 ex 单位来设置 .box 元素的高度为 10 个小写字母“x”的高度,可以看到,第一个 .box 元素的高度为 8px,第二个 .box 元素的高度为 80px。

3. fr

fr 是 CSS 中的一个相对单位,表示剩余空间的比例。例如,如果一个容器的宽度为 100px,其中一个子元素的宽度为 1fr,那么这个子元素的宽度就是剩余空间的 1/2。

实现方法

.container {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
}

上述代码中,使用 fr 单位来设置 .container 容器的三个子元素的宽度比例为 1:2:1。

注意事项

  • fr 单位的兼容性不太好,不建议在生产环境中使用。

示例说明

<div class="container">
  <div class="box">1</div>
  <div class="box">2</div>
  <div class="box">3</div>
</div>
.container {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  width: 100%;
  height: 100px;
}

.box {
  background-color: #ccc;
  text-align: center;
  line-height: 100px;
}

上述代码中,使用 fr 单位来设置 .container 容器的三个子元素的宽度比例为 1:2:1,可以看到,第一个和第三个 .box 元素的宽度为 25%,第二个 .box 元素的宽度为 50%。

4. vmin 和 vmax

vminvmax 是 CSS 中的相对单位,分别表示视口宽度和高度的最小值和最大值。例如,如果视口宽度为 800px,视口高度为 600px,那么 1vmin 的值为 6px,1vmax 的值为 8px。

实现方法

div {
  width: 50vmin;
  height: 50vmax;
}

上述代码中,使用 vminvmax 单位来设置 div 元素的宽度为视口宽度的 50%,高度为视口高度的 50%。

注意事项

  • vminvmax 单位的兼容性较好,但在 IE9 及以下版本中不支持。

示例说明

<div class="container">
  <div class="box"></div>
</div>
.container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box {
  width: 50vmin;
  height: 50vmax;
  background-color: #ccc;
}

上述代码中,使用 vminvmax 单位来设置 .box 元素的宽度为视口宽度的 50%,高度为视口高度的 50%。

5. rem

rem 是 CSS 中的相对单位,表示相对于根元素(即 <html> 元素)的字体大小。例如,如果根元素的字体大小为 16px,那么 1rem 的值就是 16px。

实现方法

html {
  font-size: 16px;
}

div {
  font-size: 1.5rem;
}

上述代码中,使用 rem 单位来设置 div 元素的字体大小为根元素字体大小的 1.5 倍。

注意事项

  • rem 单位的兼容性较好,但在 IE8 及以下版本中不支持。

示例说明

<div class="container">
  <div class="box">Hello, world!</div>
</div>
html {
  font-size: 16px;
}

.container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box {
  font-size: 2rem;
}

上述代码中,使用 rem 单位来设置 .box 元素的字体大小为根元素字体大小的 2 倍。

6. vw 和 vh

vwvh 是 CSS 中的相对单位,分别表示视口宽度和高度的百分比。例如,如果视口宽度为 800px,视口高度为 600px,那么 1vw 的值为 8px,1vh 的值为 6px。

实现方法

div {
  width: 50vw;
  height: 50vh;
}

上述代码中,使用 vwvh 单位来设置 div 元素的宽度为视口宽度的 50%,高度为视口高度的 50%。

注意事项

  • vwvh 单位的兼容性较好,但在 IE8 及以下版本中不支持。

示例说明

<div class="container">
  <div class="box"></div>
</div>
.container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box {
  width: 50vw;
  height: 50vh;
  background-color: #ccc;
}

上述代码中,使用 vwvh 单位来设置 .box 元素的宽度为视口宽度的 50%,高度为视口高度的 50%。

7. vmin 和 vmax

vminvmax 是 CSS 中的相对单位,分别表示视口宽度和高度的最小值和最大值。例如,如果视口宽度为 800px,视口高度为 600px,那么 1vmin 的值为 6px,1vmax 的值为 8px。

实现方法

div {
  width: 50vmin;
  height: 50vmax;
}

上述代码中,使用 vminvmax 单位来设置 div 元素的宽度为视口宽度的 50%,高度为视口高度的 50%。

注意事项

  • vminvmax 单位的兼容性较好,但在 IE9 及以下版本中不支持。

示例说明

<div class="container">
  <div class="box"></div>
</div>
.container {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
}

.box {
  width: 50vmin;
  height: 50vmax;
  background-color: #ccc;
}

上述代码中,使用 vminvmax 单位来设置 .box 元素的宽度为视口宽度的 50%,高度为视口高度的 50%。

总结

CSS 中有很多种单位,除了常见的 px、em、rem、vh、vw 等,还有一些不太常见的单位,例如 ch、ex、fr、vmin 和 vmax 等。在使用这些不太常见的单位时,需要注意它们的兼容性和使用场景。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:分享7个你可能不认识的CSS单位 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • 基于jquery的blockui插件显示弹出层

    首先,需要进行以下操作: 步骤一:下载并引入jQuery库和blockUI插件 在网站中引用jQuery库和blockUI插件。你可以在官方网站(http://jquery.com 和 https://malsup.com/jquery/block/)下载最新版本的jQuery库和blockUI插件。 <head> <script src=…

    css 2023年6月10日
    00
  • 使用AngularJS实现表单向导的方法

    使用AngularJS实现表单向导的方法,通常需要以下步骤: 第一步:设计数据模型 首先,需要考虑将要收集的数据的结构。可以通过定义一个数据模型来实现,以便在表单控制器和模板中重复使用。这个模型通常包含表单向导中各个步骤要收集的信息。 例如,对于一个简单的注册流程,可能需要以下数据: { firstName: ”, lastName: ”, email:…

    css 2023年6月10日
    00
  • 微信小程序实现渐入渐出动画效果

    针对微信小程序实现渐入渐出动画效果,下面我将给出完整的攻略,包含以下内容: 使用wx.createAnimation创建动画实例 在小程序中,我们可以使用wx.createAnimation()方法创建一个Animation实例,它能够通过一系列方法组成一段完整的动画过程。在这个实例对象中,可以指定动画执行的时间、延迟、动画效果等等。 示例代码: var a…

    css 2023年6月10日
    00
  • 用CSS实现Tab页切换效果的示例代码

    下面我将详细讲解如何用CSS实现Tab页切换效果的示例代码的完整攻略。 1. HTML结构 首先,在HTML中需要定义Tab选项卡的基本结构。我们需要一个Tab容器(通常是一个div元素),里面包含若干个Tab选项卡。每个Tab选项卡需要一个标题和对应的内容部分。基本结构如下: <div class="tab-container"&…

    css 2023年6月9日
    00
  • 纯css实现背景图片半透明内容不透明的方法

    下面是一份关于“纯css实现背景图片半透明内容不透明的方法”的攻略。 什么是背景图片半透明内容不透明的效果 这种效果指的是,在一个元素的背景图片是半透明状态时,元素内部的内容又是不透明状态。这种效果经常用于制作大图背景,同时又需要让内容不受图片透明度影响时非常实用。下面就是一些实现这种效果的方式。 方式一:使用伪类元素 这种方式的实现思路是在元素之中插入一个…

    css 2023年6月9日
    00
  • JavaScript webpack模块打包器如何优化前端性能

    JavaScript webpack模块打包器可以通过优化打包的方式来提升前端性能,下面是一些可以实施的优化方法: 1.代码分离 JavaScript将整个代码库打包到一个文件中会导致加载速度变慢,代码分离允许将代码分成多个文件,这些文件仅在需要时才会被加载。Webpack提供了很多方便的代码分离机制,包括手动和自动分离。 手动分离: // a.js imp…

    css 2023年6月9日
    00
  • 实例教程 一款纯css3实现的数字统计游戏

    让我来详细讲解“实例教程 一款纯css3实现的数字统计游戏”的完整攻略。 一、准备工作1. 创建HTML文件,命名为index.html,编写基本的HTML结构;2. 在HTML文件中引入CSS文件,命名为style.css;3. 创建一个父元素div,命名为countdown,并设置其宽度、高度和边框等样式;4. 在父元素div内创建4个子元素div,每个…

    css 2023年6月10日
    00
  • 让我来教你使用css中的字体图标的方法

    这里是使用CSS中的字体图标的完整攻略。 什么是字体图标 字体图标是指通过 CSS 技术将矢量图标嵌入到普通的文本内容中,以字体的形式展示在网页上。与传统的图像图标比较,字体图标具有体积小、色彩清晰、适应性强的优点。 如何使用字体图标 基本上就是在 CSS 中应用 web 字体 + Unicode 字符的组合定义字体图标。具体操作分为三步: 下载字体图标库。…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部