参见英文答案 > Fixed page header overlaps in-page anchors 32个
我正在努力清理锚点的工作方式.我有一个固定在页面顶部的标题,所以当你链接到页面中其他位置的锚点时,页面会跳转,所以锚点位于页面顶部,将内容留在固定标题后面(我希望那讲得通).我需要一种方法来将锚点从头部的高度偏移25px.我更喜欢HTML或CSS,但Javascript也可以接受.
解决方法:
您可以在没有任何JavaScript的情况下使用CSS.
给你的锚一个班:
<a class="anchor" id="top"></a>
然后,您可以将锚点设置为高于或低于页面实际显示位置的偏移量,方法是将其设置为块元素并相对定位. -250px将锚定位置为250px
a.anchor {
display: block;
position: relative;
top: -250px;
visibility: hidden;
}