Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 为什么页面会用一个溢出:隐藏的容器移到顶部?_Html_Css_Xhtml - Fatal编程技术网

Html 为什么页面会用一个溢出:隐藏的容器移到顶部?

Html 为什么页面会用一个溢出:隐藏的容器移到顶部?,html,css,xhtml,Html,Css,Xhtml,我面临着一个非常奇怪的问题。每个浏览器都有 一切都正常工作,直到您尝试使用散列(如#我的页面中的contactUs)转到某个部分为止。。。请尝试以下url: 您将看到页面向顶部移动了10px。如果你去掉散列,它会再次工作 我在页面(#container)上有一个溢出的包装器:hidden,我这样做是为了确保分辨率改变时不会出现滚动条。如果删除溢出属性,它也会起作用 我猜移动是通过滚动条的位置发生的,但因为它是隐藏的,所以它的位置只会保持不变 那么有人知道如何解决这个问题吗 编辑: 我找到了解决方

我面临着一个非常奇怪的问题。每个浏览器都有

一切都正常工作,直到您尝试使用散列(如#我的页面中的contactUs)转到某个部分为止。。。请尝试以下url:

您将看到页面向顶部移动了10px。如果你去掉散列,它会再次工作

我在页面(#container)上有一个溢出的包装器:hidden,我这样做是为了确保分辨率改变时不会出现滚动条。如果删除溢出属性,它也会起作用

我猜移动是通过滚动条的位置发生的,但因为它是隐藏的,所以它的位置只会保持不变

那么有人知道如何解决这个问题吗

编辑:


我找到了解决方案,并把它写在了anwsers上。

这确实是一个美观的布局。非常好

不管是谁,溢出似乎从
#headerWrap
的上边距中取出了一大块,并将其添加到页面底部,对我来说,正好是16像素

到目前为止,我所做的一切都没有奏效。你能把它弄到手,这样容器就不会水平溢出吗


编辑:没关系;以下操作不起作用…

#容器的样式从
溢出:隐藏更改为
溢出-y:隐藏
似乎在Firefox上运行不是一个非常健壮的解决方案。

我认为问题在于片段标识符导致容器在页面滚动之前滚动。页面完成后,容器元素的scrollTop值为“16”

以下是我在Firefox的greasemonkey中为恢复丢失区域所做的工作

window.addEventListener('scroll', 
  function(e)
  { 
    var cont = document.getElementById("container");
    if ( cont.scrollTop > 0) cont.scrollTop = 0; 
  }, 
  false );
当您滚动回顶部时,将显示缺少的空间


作为一个解决方案,我一点也不喜欢它,但它说明了您的问题所在,也许其他人可以想出一种更干净的方法将容器的滚动顶部固定为0。

解决方案是从
.rightCol
.leftCol
中删除
高度:100%


我猜这些部分都是因为高度属性而溢出的。

谢谢你们两位的好话@布罗克:我试图在点击时阻止页面溢出,但我不知道到底是什么溢出了。不仅仅是头巾。这是一个奇怪的问题。。。我以前设计过几个布局,但这次这个问题是无缘无故发生的。你有什么建议可以解决这个问题,甚至从根本上阻止它吗?再次感谢。看起来页脚、
leftCol
righcol
导致了水平溢出。扼杀边缘|左填充|右似乎是一条值得追求的道路。但是由于某种原因,
#footerWrap
仍然会溢出。给它一个75公分左右的最大宽度,可能会有帮助。谢谢你的帮助和时间。经过更多的测试,从leftCol和rightCol获得100%的高度似乎可以解决问题。我承认这很奇怪,因为这只发生在点击url时。无论如何,非常感谢。@Maher:很高兴你解决了这个问题,但是你现在应该写下你自己的答案,并在可能的情况下单击复选标记(>48小时或其他时间)将其标记为“正确”。通过这种方式,我们可以看到您的问题得到了正确的回答,不再需要任何人的关注(并且为将来可能遇到相同问题的其他人提供了解决方案)。顺便说一句,很高兴见到来自我自己国家的人@马塞尔:我刚刚加了答案,我会在两天内接受。bedankt^^如果我理解正确,这意味着浏览器处理此类情况的方式存在错误,对吗?@Maher4Ever-我不知道有任何规范实际涵盖了当片段标识符的目标位于嵌套的可滚动元素中时浏览器滚动的分布情况。然而,事实上,浏览器制造商之间确实存在共识,所以我想我们必须把它看作是一个特性而不是一个bug。