我的编程空间,编程开发者的网络收藏夹
学习永远不晚

css的%是相对于什么来取值的

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

css的%是相对于什么来取值的

这篇文章主要讲解了“css的%是相对于什么来取值的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css的%是相对于什么来取值的”吧!

css %是相对于包含块的高宽或字体大小来取值。如果是静态定位和相对定位,包含块一般就是其父元素,则%相对于父元素取值;如果是绝对定位元素,包含块是离它最近的position非static值的祖先元素,则%相对于该祖先元素取值;如果是固定定位元素,包含块是视口,则%相对于视口取值。

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

CSS %--百分比

百分比是一个相对长度单位,相对于包含块(containing block)的高宽或字体大小来取值。

关于包含块(containing block)的概念,不能简单地理解成是父元素。

如果是静态定位和相对定位,包含块一般就是其父元素。

如果是绝对定位的元素,包含块应该是离它最近的 position为非static属性的祖先元素。

如果是固定定位的元素,它的包含块是视口(viewport)。

实现代码:

css的%是相对于什么来取值的

结果图:

css的%是相对于什么来取值的

从图上我们可以看出:设置5em的div的第一行字符刚好为5个字符大小,因为如上所说,它是相对于当前元素字体的尺寸, 宽度占用90px,5 X 18 = 90px。设置5rem的div第一行字符要小一些,因为如上所说,它是相对于根元素字体大小(默认为浏览器大小16px),比18px要小一些,宽度占用80px,5 X 16 = 80px。设置百分比显示的第一行最大,因为如上所说,它是相对于父元素的尺寸比例, 宽度占用160px,200 X 80% = 160px。

常见场景中的百分比单位的使用

(1)盒模型中的百分比

在CSS中的盒模型包含的属性有:width、max-width、min-width、height、max-height、min-height、padding、margin等。这些属性在使用百分比时,参照物不尽相同:

  • width、max-width、min-width:值为百分比时,其相对于包含块的 width 进行计算;

  • height、max-height、min-height:值为百分比时,其相对于包含块的 height 进行计算;

  • padding、margin:值为百分比时,如果是水平的值,就是相对于包含块的 width 进行计算;如果是垂直的值,就是相对于包含块的 height 进行计算。

(2)文本中的百分比

在CSS中文本控制的属性有font-size、line-height 、vertical-align、 text-indent等。这些属性在使用百分比时,参照物不尽相同:

  • font-size:根据父元素的font-size 进行计算;

  • line-height:根据font-size进行计算;

  • vertical-align:根据line-height进行计算;

  • text-indent:如果是水平的,则根据width进行计算,如果是垂直的,则根据 height 进行计算。

(3)定位中的百分比

在CSS中用控制 position 位置的top、right、bottom、left都可以使用百分比作为单位。其参照物就是包含块的同方向的width和height。不同定位的包含块不尽相同:

  • 如果元素为静态( static )或相对定位( relative ),包含块一般是其父容器;

  • 如果元素为绝对定位( absolute ),包含块应该是离它最近的 position 为 absolute 、 relative 或 fixed 的祖先元素;

  • 如果元素为固定定位( fixed ),包含块就是视窗( viewport )。

(4)变换中的百分比

CSS 中的 transform 属性中的 translate 和 transform-origin 值也可以设置百分比。

  • translateX() 根据容器的 width 计算

  • translateY() 根据容器的 height 计算

  • transform-origin 中横坐标( x )相对于容器的 width 计算;纵坐标( y )相对于容器的 height 计算

注意,在 translate 还有一个 z 轴的函数 translateZ() 。它是不接受百分比为单位的值。

百分比的继承

如果某个元素设置了百分比的属性,则后代元素继承的是计算后的值。例如:

p { font-size: 10px;line-height: 120%; }

那么p的子元素继承到的值是 line-height: 12px,而不是 line-height: 120%

感谢各位的阅读,以上就是“css的%是相对于什么来取值的”的内容了,经过本文的学习后,相信大家对css的%是相对于什么来取值的这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

css的%是相对于什么来取值的

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

mysql绝对值获取的方法是什么

在 MySQL 中获取绝对值的方法是使用 ABS() 函数。ABS() 函数返回一个数的绝对值,即该数的无符号值。例如,要获取一个列的绝对值,可以使用以下语法:SELECT ABS(column_name) FROM table_name
mysql绝对值获取的方法是什么
2024-04-09

c#相对路径获取的方法是什么

在C#中获取相对路径的方法通常使用Path类的Combine方法。该方法可以将基础路径和相对路径组合在一起,得到完整的路径。示例如下:using System;using System.IO;class Program{static
c#相对路径获取的方法是什么
2024-03-04

php中相同的值可能不等于的原因是什么

这篇文章主要介绍“php中相同的值可能不等于的原因是什么”,在日常操作中,相信很多人在php中相同的值可能不等于的原因是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php中相同的值可能不等于的原因是什么
2023-07-05

JsonArray取值的方法是什么

JsonArray的取值方法主要有以下几种:1. 通过索引获取元素:可以使用JsonArray的get方法,传入元素的索引值,返回对应位置的元素。例如:jsonArray.get(0)。2. 通过迭代器遍历元素:可以使用JsonArray的
2023-10-20

Rust 相当于 Go 中的append 是什么?

php小编西瓜在这里为大家解答一个问题:“Rust 相当于 Go 中的 append 是什么?”Rust 是一种系统级编程语言,而 Go 是一种并发编程语言。在 Rust 中,相当于 Go 中的 append 函数的功能是使用 Vec 类型
Rust 相当于 Go 中的append 是什么?
2024-02-09

css主要是用来做什么的

这篇文章主要介绍了css主要是用来做什么的,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。css的全称是什么css的全称是Cascading Style Sheets(层叠样式
2023-06-14

平台对于SAP顾问个人价值的作用是什么

这篇文章给大家介绍平台对于SAP顾问个人价值的作用是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。也谈平台对于SAP顾问个人价值的作用 现在各行各业都在讲平台,个人成长离不开平台,成功离不开平台。是的,平台很重要,
2023-06-05

css中的浮动属性值是什么

这篇“css中的浮动属性值是什么”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“css中的浮动属性值是什么”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来就让我们进入主题
2023-06-06

css一行写下来的是什么格式的

css 行内样式是通过 style 属性直接在 html 元素中设置样式,具有最高的优先级,适用于对特定元素进行一次性样式更改,但大量使用时会导致代码重复和难以维护。CSS 行内样式CSS 行内样式是用于直接在 HTML 元素中应用样式的
css一行写下来的是什么格式的
2024-04-25

dropdownlist控件取值的方法是什么

在下拉列表控件中获取选中项的值,可以使用以下方法:1. 使用 JavaScript: - 使用`document.getElementById()`方法找到下拉列表控件。 - 使用`selectedIndex`属性获取选中项的索引。
2023-10-11

编程热搜

目录