微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

HTML 书签与固定页眉/页脚未正确对齐

如何解决HTML 书签与固定页眉/页脚未正确对齐

我确信有一个简单的修复,但真的很困难 - 我有一个引导主题页面,有两列,一列用于导航窗格,另一列用于内容。有一个固定的页眉和页脚。内容窗格使用书签跳转内容中的标题

我遇到的问题是,当我单击导航窗格中的某个项目时,内容窗格会移动,因此标题位于固定标题后面的屏幕之外。请有人建议我需要添加什么吗?

在这里做了一个简单的演示页面https://scroll-issue.azurewebsites.net/interpreting2.php

如果您有任何建议,我将不胜感激。

谢谢

解决方法

当您使用同页链接将元素带入视图时,浏览器会将元素放置在页面顶部。由于页面顶部有一个图像和导航栏,顶部 121 像素被这些元素覆盖。您可以通过在顶部报告分区的顶部添加填充来降低页面上的内容。因为这会在页面第一次打开时将分隔放在页面上低得多的位置,所以您可以通过向包含列添加负边距来将列向上移动。要获得后续组(我已将其放入自己的分区中 - 更容易设置样式),请在上一个分区的顶部添加相同的填充并在底部添加负边距。

<link href="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>

<style>
html {
    height: 100%;
    scroll-behavior: smooth;
}

body {
    height: 100%;
}

.banner {
    height: 100px;
    position: fixed;
    top: -15px;
    left: -10px;
    z-index: 1039;
    /* 1040 is modal dialog */
}

/* Make fixed navbar below EES graphic and right colour */
.navbar-fixed-top {
    top: 70px !important;
    background-color: #281A39 !important;
}

.navbar-fixed-bottom {
    background-color: #281A39 !important;
}

/* Colour menu items better for new navbar colour */
.navbar-inverse .navbar-nav>li>a,.navbar-inverse .navbar-brand {
    color: #efebef;
}

.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover {
    background-color: #281A39 !important;
}

@media (min-width:992px) {
    .affix-md {
        position: fixed;
    }
}

#main-row {
    padding-top: 11rem;
}

#contents {
    z-index: 1; /* so it's not covered by the other column */
}

#reports {
    margin-top: -11rem;
}

#report-1,#report-2 {
    padding-top: 11rem;
}

#report-1 {
    margin-bottom: -11rem;
}
</style>

<img src="https://via.placeholder.com/2545x124.png/281A39/FFFFFF?text=filler-image" class="banner">
<nav class="navbar navbar-inverse navbar-fixed-top ">
    <div class="container-fluid">
        <div class="navbar-header">
            <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse" style="z-index:5000;">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
            <a class="navbar-brand" href="interpreting2.php">Scroll Issue</a></div>
        <div class="collapse navbar-collapse" id="navbar-collapse">
            <ul class="nav navbar-nav navbar-left">
                <li><a href="interpreting2.php"><span class="header-icon glyphicon glyphicon glyphicon-list-alt" aria-hidden="true"></span> Interpreting Your Report</a></li>
            </ul>
            <ul class="nav navbar-nav navbar-right"></ul>
        </div>
    </div>
</nav>
<div class="container-fluid">
    <div class="row" id="main-row">
        <div class="col-xs-12 col-md-2" id="contents">
            <div class="affix-md">
                <h1>Contents</h1>
                <a href="#report-1">Report Top</a><br>
                <a href="#report-2">Second Heading</a>
            </div>
        </div>
        <div class="col-xs-12 col-md-10" id="reports">
            <div id="report-1">
                <h1>Interpreting Your Report</h1>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
                <p class="mb-5">Very long content</p>
            </div>
            <div id="report-2">
                <h1>Another Heading</h1>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <p class="mb-5">Second heading content</p>
                <br />CONTENT - END
            </div>
        </div>
    </div>
</div>
<nav class="navbar navbar-inverse navbar-fixed-bottom visible-lg visible-md visible-sm">
    <div class="container-fluid">
        <ul class="nav navbar-nav navbar-left">
            <p class="navbar-text">This is the footer</p>
        </ul>
    </div>
</nav>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?