css位置绝对且固定不正常

时间:2013-05-15 20:33:43

标签: html css scroll position

有一个siderbar,我们希望它滚动。很明显,position:fixedposition:absolute都可以做到这一点,但事实并非如此!

position:fixed发生以下情况:

侧边栏在滚动时出现故障并且分解并且行为奇怪

position:absolute发生以下情况:

侧边栏滚动而不是留在原地。

这是侧边栏的css(不正确的ID名称)

#sidebar{
font-family: 'Jura', sans-serif; 
position: fixed; 
margin-top:80px; 
margin-left:1020px;
font-size:18px;
padding-top:0px; 
padding-bottom:17px; 
text-align:center; 
height:420px; 
width:300px; 
overflow:hidden;
solid #000000;
color:#000000;
-webkit-transition: opacity 0.3s linear;
-webkit-transition: all 0.3s ease-in-out;
-moz-transition: all 0.3s ease-in-out;
-o-transition: all 0.3s ease-in-out;
background-color:transparent;
opacity: 1;
z-index:999;
}

this is a link to the blog因此您可以查看开发人员工具,了解故障情况以及究竟发生了什么。

为什么定位行为如此奇怪,如何解决?

这种情况发生在safari和chrome中,我没有安装firefox或Internet Explorer,所以我不确定这些浏览器的响应

故障图片,将侧边栏图像分开,偶尔会显示一些文字:

enter image description here

2 个答案:

答案 0 :(得分:1)

使用四个字母的F字从元素中删除overflow:hidden

#???? {
    font-family: 'Jura', sans-serif;
    position: fixed;
    margin-top: 80px;
    margin-left: 1020px;
    font-size: 18px;
    padding-top: 0px;
    padding-bottom: 17px;
    text-align: center;
    height: 420px;
    width: 300px;
    /*overflow: hidden;*/ <---- remove for "glitch" to go away
    color: #000000;
    -webkit-transition: opacity 0.3s linear;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    background-color: transparent;
    opacity: 1;
    z-index: 999;
}

该元素被命名为审查(我假设)F字!

答案 1 :(得分:0)

你想要css overflow属性:Overview。隐藏或可见应该可以解决问题。