首页 > 《精通CSS》中绝对定位的几个疑问?麻烦前端大大们看一下,非常感谢

《精通CSS》中绝对定位的几个疑问?麻烦前端大大们看一下,非常感谢

非常感谢您能抽时间看一下我的问题,我会在下面进行描述,非常感谢

  1. 绝对定位元素在没有已经定位的祖先元素的情况下,那么它的位置是相对于初始包含块的。根据用户代理的不同,初始包含块可能是画布或者HTML元素

  2. 出处 《精通CSS》 46页

  1. 请问这里的初始包含块指的是?

  2. 用户代理是指不同浏览器吗?为何叫用户代理呢?

  3. 画布指的是?HTML元素指的是<html></html>吗?

PS: 非常感谢各位的回答,我找到了一张图,这里讲述的解除了我的一些疑惑!


出处: KB008: 包含块( Containing block )


在 CSS 标准里面为了定义一些元素的布局方式定义了块元素,在我们看来可能大概分为blockinline
但是标准里面为了明确没有歧义的描述一个东西预先定义了好多的名词(不要认为教程里瞄那几个就够了,你仔细看会发现有写有歧义有些根本就没说)。其中一个就叫做containing block,比如 div 就会生成一个 contianing block大小就是 div 设置的 width 和 height (如果设置了的话,否则自动计算,当然box-size保持默认值)。

user agents 确实其中一种是浏览器,因为CSS定义的样式不止是为了浏览器显示样式而已存在的,还有打印机,电视,终端等。

在浏览器上,initial containing block 就是浏览器显示网页的那块范围。

The containing block in which the root element lives is a rectangle called the initial containing block. For continuous media, it has the dimensions of the viewport and is anchored at the canvas origin; it is the page area for paged media. The 'direction' property of the initial containing block is the same as for the root element.


1.<html></html>
2.不是。还有一些叫屏幕阅读器之类的东西,很少见
3.对于浏览器而言是<html></html>

【热门文章】
【热门文章】