Bootstrap 4 链接未从Div顶部开始
我开始使用一些Bootstrap4演示主题 当我创建指向同一页面部分的链接时,它们走得有点太远,我松开了该div的前几行,所以我必须向后滚动一点才能看到开始。在本例中,它可能从“content3”左右开始 似乎有某种补偿在起作用?我不知道在哪里能找到它 有没有办法调整这一点,使之不超过div的开头Bootstrap 4 链接未从Div顶部开始,bootstrap-4,Bootstrap 4,我开始使用一些Bootstrap4演示主题 当我创建指向同一页面部分的链接时,它们走得有点太远,我松开了该div的前几行,所以我必须向后滚动一点才能看到开始。在本例中,它可能从“content3”左右开始 似乎有某种补偿在起作用?我不知道在哪里能找到它 有没有办法调整这一点,使之不超过div的开头 <a href="#here1" >MY INFO goooo</a> <div id="here1" class="container text-center">
<a href="#here1" >MY INFO goooo</a>
<div id="here1" class="container text-center">
content1<br>
content2<br>
content3<br>
content4 etc....<br>
</div>
内容1
内容2
内容3
内容4等……
谢谢-Dave如果你的网站有固定的标题,你可能已经注意到锚定标签链接并不完美——当用户使用锚定链接时,锚定的位置会隐藏在固定标题后面,隐藏内容的第一部分 此方法不涉及任何JavaScript,也不需要更改主题或内容 在HTML中:
<a class="anchor" id="top"></a>
下面是另一种方法:
:target:before {
content:"";
display:block;
height:90px; /* fixed header height*/
margin:-90px 0 0; /* negative fixed header height */
}
注意:90px是固定页眉的高度加上边距和填充。您需要将其调整为固定标题的大小
的缺点是它需要浏览器支持伪元素,如果目标元素的规则集包含背景色、重复的背景图像、填充顶部或边框顶部,那么它将失败
在此了解更多方法及其优缺点:
此解决方案使用JS:
var shiftWindow = function() { scrollBy(0, -50) };
if (location.hash) shiftWindow();
window.addEventListener("hashchange", shiftWindow);
您可以阅读更多有关其他用户解决方案的信息。无法重现此问题,似乎效果不错。非常感谢sunsetsurf-这非常有用-有很多可能性!我也从你的一个链接中发现了这一点,它似乎工作得很好`*[id]{display:block;content::;margin top:-75px;height:75px;visibility:hidden;}`非常抱歉,很长时间没有回复你。我刚刚学习了投票和评论,我想感谢你们的努力。
var shiftWindow = function() { scrollBy(0, -50) };
if (location.hash) shiftWindow();
window.addEventListener("hashchange", shiftWindow);
function scrollToDiv(divID){
$('html, body').animate({
scrollTop: $('#' + divID).offset().top - 50
}, 1000);
}