美文网首页
[css] 从width 和 height计算方式的区别说起

[css] 从width 和 height计算方式的区别说起

作者: alue | 来源:发表于2022-05-02 17:13 被阅读0次

这应该是前端的基础了,但也是最容易引起困惑的地方。

同样给一个元素的宽度和高度都赋值50%, 往往会发现,只有宽度能够按照预期变成父元素的一半,高度还是没有变化。

#target {
  width: 50%;
  height: 50%;
}

这就牵扯到css 宽高 的计算方式了。
默认情况下,元素的 取决于父元素,而 则是由其内容决定

当我们用百分比来作为宽高属性的值时,这种默认行为对 的计算没有问题,但 的计算就有问题了。

子元素:父亲,我的高是你的50%。
父元素:什么?我的高就是你的高,你的高又是我的一半,你可是把我搞糊涂了。

看见了吧,正是这种默认行为的差异,导致高度无法正常计算。

我们再深入的思考一下,为什么会有这样的差异

本质上,这种行为差异来源于人书写阅读的习惯。

想象一下,如果我们书写文字时,像古中国那样是从上到下竖排版,而不是现在这样从左至右,css 的宽高默认行为恐怕就要颠倒一下了。
这时候,用户浏览网页都是默认左右滚动窗口,那样浏览器的高度有个确定值,宽度则会根据内容动态变化。
正是因为横向排版,才导致了浏览器 宽高 的计算方式产生这种差异。

再往下思考,就要引入为什么横向排版成为主流这个话题了。

相关文章

网友评论

      本文标题:[css] 从width 和 height计算方式的区别说起

      本文链接:https://www.haomeiwen.com/subject/gwkvyrtx.html