P粉2855875902023-08-22 17:09:27
如果您不能或不想设置一个新的类,可以在CSS中为::before
伪元素添加一个固定高度的:target
伪类:
:target::before { content: ""; display: block; height: 60px; /* 固定的标题高度 */ margin: -60px 0 0; /* 负的固定标题高度 */ }
或者使用jQuery相对于:target
滚动页面:
var offset = $(':target').offset(); var scrollto = offset.top - 60; // 减去固定的标题高度 $('html, body').animate({scrollTop:scrollto}, 0);
P粉9869374572023-08-22 09:39:10
我遇到了同样的问题。 我通过给锚点元素添加一个类,并将topbar的高度作为padding-top的值来解决了这个问题。
<h1><a class="anchor" name="barlink">Bar</a></h1>
我使用了以下的CSS:
.anchor { padding-top: 90px; }