我正在尝试将position:sticky
添加到容器内部的导航div中。但是,仅当我移除容器或从容器上方的div移除高度时,它才起作用。 Here is a jsfiddle的问题。删除#main
部分可以使粘性位置起作用,但我不知道为什么,在那里需要该部分。
body{
height:2000px;
background-color:red;
}
nav{
width:100%;
height:50px;
background-color:black;
z-index:1000;
position:sticky;
top:0;
}
#main{
position:relative;
}
#some-div{
position: relative;
height:100vh;
background-size:cover;
overflow:hidden;
}
<section id="main">
<div id="some-div"></div>
<nav></nav>
</section>
答案 0 :(得分:0)
我在height:100%
上添加了#main
,因为父母应该有身高。
body{
height:2000px;
background-color:red;
}
nav{
width:100%;
height:50px;
background-color:black;
z-index:1000;
position:sticky;
top:0;
}
#main{
position:relative;
height:100%;
}
#some-div{
position: relative;
height:100vh;
background-size:cover !important;
overflow:hidden;
}
<section id="main">
<div id="some-div"></div>
<nav></nav>
</section>