初始包含块和视口之间的差异

use*_*600 6 css w3c css3

两者之间有什么区别,还是一样?我认为他们指的是同样的事情,但是在不同的情况下,但我不确定,所以我在这里问.

Bol*_*ock 10

初始包含块和视口虽然彼此相关,但却是两个不同的概念.

视口通常是指浏览器窗口的可视区域,其中页面在屏幕上呈现.初始包含块是页面中用于呈现根元素和其他所有内容的逻辑区域.

初始包含块的尺寸基于这些视区(见第10.1节),而当该含量不再能够以适合视口,视口是由可滚动,所以用户可以继续访问的内容的其余部分.此外,新的vw,vh,vminvmax单元被称为视区百分比单位,但它们也被描述为相对于包含初始块的尺寸.

请注意,视口的定义可能因设备而异.例如,iOS上的Safari视口与桌面浏览器的视口非常不同.

  • @ user3790069:不,[spec](http://www.w3.org/TR/CSS21/intro.html#the-canvas)实际上说画布是无限的.初始包含块根据其内容需要大小,但理论上可以根据需要扩展以容纳更多内容,从而占用更多的画布. (2认同)
  • @philmcole:ICB 的逻辑尺寸主要由页面上呈现的元素的实际尺寸决定,可能会超过视口的尺寸,从而导致滚动条。因此,实际上,ICB 是总的可滚动区域。桌面浏览器通常就是这种情况,因为视口在移动设备上的实现方式有点不同(至少,我最后记得是这样)。在桌面上,视口尺寸几乎就是网页可见的浏览器窗口框架的尺寸。 (2认同)