html – 如何抵消我的固定导航栏带给我的位置?

html – 如何抵消我的固定导航栏带给我的位置?,第1张

概述我在我的网站上有一个固定的导航栏,保持在顶部,带有链接,使我进入页面的不同部分.但是,由于我的固定导航栏的高度为40像素,所以每个部分的开头40像素被覆盖.我如何使用 HTML或CSS来抵消40px的位置. 谢谢. 您可以尝试绝对定位每个部分顶部40像素的“虚拟”锚点.您可以给它们零宽度/高度和隐藏的可见性,以确保这些锚点不会影响页面的显示方式.当用户单击固定导航栏中的其中一个链接时,窗口将滚动到 我在我的网站上有一个固定的导航栏,保持在顶部,带有链接,使我进入页面的不同部分.但是,由于我的固定导航栏的高度为40像素,所以每个部分的开头40像素被覆盖.我如何使用 HTML或CSS来抵消40px的位置.
谢谢.解决方法 您可以尝试绝对定位每个部分顶部40像素的“虚拟”锚点.您可以给它们零宽度/高度和隐藏的可见性,以确保这些锚点不会影响页面的显示方式.当用户单击固定导航栏中的其中一个链接时,窗口将滚动到虚拟锚点的顶部,比实际部分开头的40个像素高.

示例HTML:

<div >  <a href="#anchor1">Anchor 1</a>  <a href="#anchor2">Anchor 2</a>  <a href="#anchor3">Anchor 3</a></div><div >  <span ID="anchor1" ></span>  Section Content</div><div >  <span ID="anchor2" ></span>  Section Content</div><div >  <span ID="anchor3" ></span>  Section Content</div>​

示例CSS:

body {    padding-top: 40px;}.navbar {    position: fixed;    wIDth: 100%;    height: 40px;    top: 0;    left: 0;    z-index: 10;    border-bottom: 1px solID #ccc;    background: #eee;}.section {    position: relative;}.anchor {    display: block;    position: absolute;    wIDth: 0;    height: 0;    z-index: -1;    top: -40px;    left: 0;    visibility: hIDden;}

有关一个工作示例,请参阅http://jsfiddle.net/HV7QL/

编辑:CSS3还包括:目标伪类,其适用于其文档中链接的href引用的ID的元素或URL的哈希值.您可以将40像素的填充应用于仅将应用于用户从固定导航栏中选择的部分的目标顶部.

示例CSS:

.section:target {    padding-top: 40px;}

这比上述方法语义上更清洁,但在旧版浏览器上不起作用.

工作实例:http://jsfiddle.net/5Ngft/

总结

以上是内存溢出为你收集整理的html – 如何抵消我的固定导航栏带给我的位置?全部内容,希望文章能够帮你解决html – 如何抵消我的固定导航栏带给我的位置?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1140670.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存