html - 导航到#id 时,元素隐藏在固定位置标题下

标签 html twitter-bootstrap navigation

<分区>

我有一个 Bootstrap 3.0 导航栏,它始终在页面顶部可见,但这可以代表 position 所代表的任何内容。属性是 fixed .

<nav class="navbar navbar-default navbar-fixed-top" >

因为修复它会使其脱离文档流,所以我需要向 body 元素添加一些填充,以便在首次显示页面时不会隐藏内容

body {
    padding-top: 70px;
}

问题是,当我单击菜单项导航到某个部分时,例如 #About然后该部分的顶部被切掉。

jsFiddle

问:有没有办法添加填充,以便在导航到时可以看到完整的项目?

最佳答案

更新后的答案:

如本 answer 中所述,问题是,您的浏览器总是希望将您的 anchor 滚动到窗口的确切顶部。如果您将 anchor 设置在文本实际开始的位置,它将被菜单栏遮挡。

相反,将容器的 padding-top 设置为您想要的偏移量,并将容器的 margin-top 设置为padding-top 的相反。现在容器的 block 和 anchor 从页面的正上方开始,但里面的内容直到菜单栏下方才开始。

section {
    padding-top: 60px;
    margin-top: -60px;
}

jsFiddle

关于html - 导航到#id 时,元素隐藏在固定位置标题下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18948440/

相关文章:

html - 关于清除 HTML/CSS 中 float 导航栏的这些错误的任何建议?

html - 为 safari 移动网络显示不同的字体大小

php - Zend_Form : Using HtmlTag Decorator twice?

javascript - 制作一个类似于 html5 菜单的 Windows 资源管理器,自动添加新文件/ map

javascript - Bootstrap 中的完全可点击 Accordion

html - 悬停时的下拉菜单消失(使用 Bootstrap )

jQuery:淡化 CSS 悬停在静态按钮之上?

javascript - 为什么我不能这样使用 CSS?

css - 需要简单的 html5 布局帮助的相等人造列

jquery - 如何将单个 div 设置为另一个 div 中的任何悬停链接?