绝对定位是相对于提供定位上下文的包含块;默认情况下是文档
a)因此,如果绝对定位是相对于文档的,那么我们可以将文档的起点想象为二维坐标系,其原点位于视口的左上角(假设我们将浏览器滚动到顶部到最左边)?
b)我假设浏览器认为视口最右边也是文档的最右边?!因此,当视口宽度为800px时,文档的宽度也为800像素,但是当我们将视口大小调整为400像素时,文档的宽度也是400像素?
换句话说,如果某个元素的宽度为3000像素,但是如果视口的宽度只有400像素,那么400px也是文档的宽度,而不管宽度为3000像素的元素是多少?
感谢名单
编辑:
很抱歉继续拖动这个:
1)
您可以告诉浏览器忽略视图端口之外的任何内容
a)嗯,似乎溢出属性与决定浏览器是否应该提供滚动条来查看整个元素没有多大关系。相反,看起来这个属性只处理内容溢出元素的框?!
b)因此,我假设即使溢出设置为隐藏,如果元素的宽度设置为3000像素,浏览器仍会提供水平滚动条?
c)当我们的元素比视口宽时,还有其他属性决定是否应该提供水平滚动条吗?
2)
我不确定这是怎么发生的(见A)
我不能确定,但是一个元素可能有填充和边距属性设置为一些大数字,浏览器没有提供滚动条,而只是从元素中删除了边距和填充
答案 0 :(得分:1)
A - 是的。但是,视口并不总是浏览器窗口。例如,框架被视为视口。
B - 文档可能比视口大。这是导致滚动条的原因。例如,大多数网站的高度都比大多数浏览器视口大,这就是许多网站都有垂直滚动条的原因。
答案 1 :(得分:1)
文档的宽度为3000,窗口400
你可以使用固定定位而不是绝对定位
固定定位使用视口坐标,因此您可以创建非滚动背景,例如