我想做一个粘在顶部的导航栏,但是当它粘在上面的时候有一个小的缝隙。我没有页边空白或者填充。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div class="topdiv"></div>
<div class="bardiv"></div>
</body>
</html>
html, body {
height: 200%;
width: 100%;
margin: 0;
padding: 0;
}
.topdiv {
height: 50px;
}
.bardiv {
position: sticky;
top: 0px;
height: 50px;
background-color: black;
}
它并不是在所有的缩放级别下都显示出来,例如在jsfidle上我只在175%下看到它,只有当topdiv的高度以像素为单位声明时才会出现这种情况,同时也设置了bardiv top:-1px也解决了这个问题,但我不明白为什么现在它不起作用了。
http://jsfiddle.net/daxy5mru/41/
2条答案
按热度按时间iyfjxgzm1#
诀窍是使用“top:-1像素”。
示例类:
mccptt672#
你不能简单地使用HTML和CSS,你也应该使用JavaScript来保持标题在滚动时的粘性。