场景:
标题高度+内容高度超出了隐藏溢出内容的视口。内容绝对位于顶部 0、底部 0,并且顶部边距等于标题高度,因此不会重叠。
Opera 缺陷:
Opera 似乎在考虑元素的上边距之前计算绝对定位的 div 的高度(相对于视口)。这适用于超出视口底部边缘的内容(加上标题),溢出的内容被隐藏(html{overflow:hidden}
)。
其他浏览器似乎在应用上边距后计算高度,这导致绝对定位的 div 的整体高度更短。但不是 Opera,绝对定位的 div 与视口大小相同,并且超出视口的标题长度。
解决方法:
不要使用绝对定位的 div 的上边距,这些 div 超出了隐藏视口溢出的视口。相反,将top
绝对定位的 div 上的样式设置为上边距的长度。
margin-top: 0px;
top: 68px;
这将使 Opera 和所有其他浏览器的行为一致。