CSS关于属性值是百分比的知识盘点

网上科普有关“CSS关于属性值是百分比的知识盘点”话题很是火热,小编也是针对CSS关于属性值是百分比的知识盘点寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问...

网上科普有关“CSS关于属性值是百分比的知识盘点”话题很是火热,小编也是针对CSS关于属性值是百分比的知识盘点寻找了一些与之相关的一些信息进行分析 ,如果能碰巧解决你现在面临的问题,希望能够帮助到您 。

早上感觉不对劲,一睁眼就发现媳妇趴在我身上 ,她告诉我她的手机找不到了问我看没看到。我去啊~我刚睡醒谁特么知道你手机丢哪里去了?我就直接告诉她我没看到 ,而且我刚睡醒怎么可能知道。我又告诉她是不是早上上厕所了放厕所了,而且昨天晚上她是玩手机玩睡着的 。这样看来,手机在厕所的几率是30% ,手机在卧室的几率是70% 。不过她非说是我藏起来的。我欲哭无泪啊,我说你再无理取闹我就不理你了。就算你用白花花的大美腿来诱惑我也没用 。就像下面这张图一样。

说什么都不行,媳妇不依不饶 ,我算是无奈了。不过还好最后在床下面找到了 。我看了看表才特么6点钟,这娘们这么早爬起来第一反应就是看自己的手机。算是没救了……不过她竟然在我申辩之后竟然不相信自己的老公,也着实可恶。我要处罚她……

不过 ,仔细想想 。百分比这种方式在我们的日常生活中还是比较常见的。例如我百分百没有×××,你百分百×××,某某百分百是×××等等。在我们的工作学习中百分比的形式更是多见 。CSS中有些属性的值存在百分比的形式的 ,今天就来做个总结把这些属性百分比的知识加深下理解。

在页面中很多元素都是可以设置 width 和 height 的。设置可能值的形式中也包含百分比 。在早期网页设计中使用 table 经行布局时,为了保证表格能响应内容的变化,很多人都会使用百分比的值来渲染 table 。后来经过技术的演化迭代 , table 布局逐渐没落 ,div+css开始兴起。给 width 和 height 设置固定的PX成为主流。百分比 table 的形式荣光不再,但伟大的想法总会是卷土重来 。再后来移动客户端兴起,响应式布局也随着开始火起来。百分比也就是解决响应视口变化的不二法门。DIV+CSS、百分比形式再加上 @media 三者的结合有称霸前端的趋势 。当然现在似乎更前沿的是css中的 flex 布局 ,这个有机会再聊。

前面说了这么多,其实 width 和 height 设置百分比还是很容易被理解的,就是参照物是父元素。例如 width:50% 就是说元素的宽度是父元素宽度的50% , height:30% 就是高度是父元素高度的30% 。这个没什么要特别说的,就是对应父元素的属性值进行百分比计算, width 对 width ; height 对 height 。看下面的图就能理解。

margin 和 padding 的百分比是个比较难以理解的属性 。当然它也是相对于父元素来计算自己百分比的值的 ,不过计算方式有点奇葩,它们是基于父元素的 宽度(width) 来进行计算的。 margin-left/margin-right 和 padding-left/padding-right 基于父元素宽度还好理解,奇葩点就是 margin-top/margin-bottom 和 padding-top/padding-bottom 的百分比也是基于父元素的宽度来计算的。什么个情况?难道不是 width 和 height 的计算方法啊?

上面的图中可以清晰的看出来实际渲染结果却是是按照父元素宽度的百分比来设置的 。 margin-top:10%; 的实际渲染结果50px; padding-top:1%; 的实际渲染效果是5px ,它们都是根据父元素的宽度 width:500px; 产生的计算结果 。这个试验印证了: 子元素边距和填充距的值设为百分比,那么它的计算方式就是根据父元素的宽度( width )来进行计算的。 另外提一下的是,在上面的图中可以看到我在父元素设置了一个 overflow:hidden; 的声明。这个是为了防止margin collapsing的出现 。关于margin collapsing的详细介绍出门右转在我的文章 《浅析让人D疼的margin折叠》 中有说明。

嗯!奇葩的百分比 ,我也跟着奇葩了。我竟然不说原理直接上实验结果了 。酒香不怕巷子深 ,这点小小的“奇葩 ”不耽误我们理解这个知识点。从相应的官方文档 《8.3 Margin properties》 也能看到相应的说明。下面引用相应关于 margin 的资料 。

然后这里是引用相应关于 padding 的资料,它来自于 《5. The padding properties》 。

问题来了,为什么是基于宽度来计算呢?

这是因为我们的“阅读模式”导致的 ,我们都是“从左向右逐字,由上到下逐行”的阅读习惯,这种模式也就决定了宽度必须是固定的 ,而高度是可以无限扩展的。在一个高度可以随时扩展且是无限的容器内,百分比的计算结果就会不固定,这个有悖于我们的“排版 、布局 ”的设计初衷 ,页面元素变的不容易可控 。

所以依据宽度固定的计算结果能更好的控制“设计结果 ”。其实这是西方的阅读方式,我们中国的传统阅读习惯是“从上到下逐字,从右向左逐列”的模式 ,没办法谁让这玩意是人家发明的呢。

如果使用属性 writing-mode 改变文本流的方向变成垂直流的话,那么这个计算方式就不是依据父元素的宽度了,而是依据复原度的高度 。因为在垂直文本流中 ,高度变成固定而宽度变成了可以无限扩展 。这个介绍到这里差不多了 ,继续下一个。

position是个大宝贝儿,不管是 position:absolute; 还是 position: relative; 使用方位都非常广。关于两者的区别不再过多啰嗦,这篇文章只关于百分比的问题 。设置完毕 position 之后可以根据 top/right/bottom/left 属性的值来对元素进行定位 ,它们的取值形式中也还有百分比。关于百分比是和谁有关呢?先买个关子。我们先来建立一个概念,让我们的脑海中有个“逆Y轴坐标”——自己胡乱起的名字,别较真~

有了这个图之后 ,再理解 top/right/bottom/left 属性的百分比值就容易许多 。说白了其实还是与父元素的 width 和 height 属性有关。从图上可以知道 top 就是和父元素 height 有关,其他的几个属性的百分比计算也是一样,都是通过父元素来确定自己的值的。

需要注意的是 top/right/bottom/left 属性在同方向上只能有一个属性有效 ,例如设置了 top 再去设置 bottom 就会无效,设置了 right 再去设置 left 就会无效 。如果四个同时设置,只会生效两个。他们的权重是上大于下 ,左大于右,意思是同时设置上下,那么上生效。同时设置左右 ,左生效 。

而且在设置不同的组合 ,相当于原点来计算的元素顶点位置也是不一样的。具体情况如图:

常用的就这些了,不过还没完 嘿嘿嘿 ~

上面所有的情况都是在常规盒模型下的结果。也就是 box-sizing: content-box; 时的结果 。如果修改为怪异盒模型即 box-sizing: border-box; 之后,计算方式没有变 ,该与谁有关就与谁有关 。可是计算结果会多出一步来,就是需要减去 border 和 padding 的值。

因为在标准盒模型下,宽和高的值就是固定的 ,是不包含 border 和 padding 的。而怪异盒模型下的宽和高是包含 border 和 padding 的值的 。换句话说: 在标准盒模型下,百分比的计算和宽高的值有关,拿来直接计算;在怪异盒模型下 ,百分比的计算是和容器真实大小有关(宽高 减去 margin-padding=真实大小)。 关于盒模型的概念在我的文章 《盒模型与box-sizing》 中很详细的说明。

举个例子就能验证下我的说法是否正确 。点击进入 “栗子 ”

如果我的心算没有错,橙色块的 width:80px;height:15px; ,我要快点闪了 ,没时间贴验证图了。自己可以进入浏览器调试模式,选中橙色的块看下我的心算结果对不对。我闪了,88~

关于“CSS关于属性值是百分比的知识盘点”这个话题的介绍 ,今天小编就给大家分享完了 ,如果对你有所帮助请保持对本站的关注!

本文来自作者[司寇浩然]投稿,不代表哔哔号立场,如若转载,请注明出处:https://www.ibb4.com/cshi/202512-760.html

(185)

文章推荐

  • 31省份新增确诊10例(31省份新增确诊病例46例)

    31省区市新增10例确诊均为境外输入,你有哪些看法?而且在进入下半年的时候呢,其实在整个全国的话,很多的一些中风险高风险地区转变为低风险地区,甚至很多的一些低风险地区已经连续一年半年都存在了0输入,0发生的一些区域。那在有些地区出现了感染,但是好在发现的非常及时,而且得到了非常好的一个管控,这个不

    2025年12月05日
    16
  • 宣传册的排版怎样操作?

    网上有关“宣传册的排版怎样操作?”话题很是火热,小编也是针对宣传册的排版怎样操作?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。撰写文字内容、搜集,设定规格和页数、确定版心规格,排版顺序(封面、公司介绍、业务介绍、组织结构、成功案例、合作单位等、封底),打印

    2024年12月15日
    18
  • 湖北1男童阳性系江苏病例密接(湖北疫情男子)

    陕西西安疫情最新消息:新增1例本土确诊病例1、陕西西安昨日新增1例本土确诊病例,具体情况如下:病例基本信息新增本土确诊病例为张某,男性,20岁,系西安市灞桥区某境外人员隔离酒店工作人员。其曾与12月9日公布的本土确诊病例同房间居住,自12月9日起作为密切接触者接受单人单间隔离观察。2、症状出现与确

    2025年12月05日
    18
  • 《巨人的花园》说课稿

    网上科普有关“《巨人的花园》说课稿”话题很是火热,小编也是针对《巨人的花园》说课稿寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。 作为一名默默奉献的教育工作者,很有必要精心设计一份说课稿,借助说课稿可以更好地组织教学活动。那要怎么写好说课稿呢?以下是我整理的

    2025年12月06日
    214
  • 《铠甲勇士》的简介和人物的介绍

    网上科普有关“《铠甲勇士》的简介和人物的介绍”话题很是火热,小编也是针对《铠甲勇士》的简介和人物的介绍寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。剧名:铠甲勇士之英雄传奇(国产特摄片)片长:52集制作周期:5个月题材:当代青少产地:中国制作机构:上海

    2025年12月09日
    174
  • 4开纸有多大?

    网上科普有关“4开纸有多大?”话题很是火热,小编也是针对4开纸有多大?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。4开纸的尺寸是389mm*546mm,4开纸等于4张A4纸。A4纸的尺寸是210mm*297mm,A4也叫做16开。扩展资料纸张尺寸是指折页

    2025年12月10日
    139
  • 《宝贝计划》中的演员表有谁?

    网上科普有关“《宝贝计划》中的演员表有谁?”话题很是火热,小编也是针对《宝贝计划》中的演员表有谁?寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。成龙古天乐高圆圆许冠文陈宝国应采儿蔡卓妍杜丽莎成龙、高圆圆、古天乐成龙——饰人字拖讲道德的贼由于

    2025年12月10日
    201
  • 北京一摄影师确诊(北京新增1例确诊摄影师)

    谢征宇相关事件一年后的2009年8月13日下午4点,歌手含笑在北京朝阳区望京的一个小区内被警方抓获,原因是在自家吸食毒品。含笑供认毒品是从摄影师谢征宇那里获取的。值得注意的是,就在含笑被捕前几小时,谢征宇又一次在他的住所被警方发现并抓获,这一系列的事件再次引发了对于毒品问题的关注。去年初,导演张元

    2025年11月21日
    13
  • 【上海外牌,上海外牌限行2025】

    网上科普有关“【上海外牌,上海外牌限行2025】”话题很是火热,小编也是针对【上海外牌,上海外牌限行2025】寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。钱江晚报小时新闻记者?林燕?王竞一这几天,出行最热的话题莫过于上海外牌限行通告:自11月2日起,上海调

    2025年12月10日
    201
  • 六年级科学知识点汇总

    网上科普有关“六年级科学知识点汇总”话题很是火热,小编也是针对六年级科学知识点汇总寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问题,希望能够帮助到您。什么是学霸,就是擅长学习,且每门学科成绩分数都很高的学生。‘这里,小宋想重点强调的是一个词“每门”。然而,在小学的课程当中,就

    2024年12月15日
    16

发表回复

本站作者后才能评论

评论列表(4条)

  • 司寇浩然
    司寇浩然 2025年12月12日

    我是哔哔号的签约作者“司寇浩然”!

  • 司寇浩然
    司寇浩然 2025年12月12日

    希望本篇文章《CSS关于属性值是百分比的知识盘点》能对你有所帮助!

  • 司寇浩然
    司寇浩然 2025年12月12日

    本站[哔哔号]内容主要涵盖:国足,欧洲杯,世界杯,篮球,欧冠,亚冠,英超,足球,综合体育

  • 司寇浩然
    司寇浩然 2025年12月12日

    本文概览:网上科普有关“CSS关于属性值是百分比的知识盘点”话题很是火热,小编也是针对CSS关于属性值是百分比的知识盘点寻找了一些与之相关的一些信息进行分析,如果能碰巧解决你现在面临的问...