html - 为什么我的按钮没有跳到 Bootstrap 4 中的预期部分?
问题描述
我有一个关于使用 scrollspy、在导航栏中添加一个按钮以及让该按钮跳转到其预期目标部分的问题。我添加了一个更语义化的标签,并使用带有 form-inline 类的 a 将其放在导航栏链接旁边。导航链接工作正常,但按钮没有。
我正在尝试不同的方法将 href 添加到按钮标签,或者用标签替换标签并删除标签,但没有任何效果。我试图找到一个使用该标签的卷轴间谍,但没有运气。这是我的代码:
<body data-spy="scroll" data-target="#navbar">
<nav class="navbar fixed-top navbar-expand-md navbar-dark" id="navbar">
<a class="navbar-brand" href="index.html" id="navbarBrand">Unexpected Friends</a>
<!--navbar toggler is the hamburger icon that appears when in smaller screens-->
<button type="button" class="navbar-toggler" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div id="navbarNav" class="collapse navbar-collapse">
<!--ml-auto moves the links to the right-->
<ul class="navbar-nav ml-auto">
<li class="nav-item active">
<a class="nav-link" href="#ourStory">Our Story<span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#gallery">Gallery</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#blog">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#contact">Contact</a>
</li>
<form class="form-inline" id="button">
<button type="button" class="btn btn-outline-light" role="button" id="waysToHelp" href="#waysToHelp">Ways to Help</button>
</form>
</ul>
</div><!--navbarNav-->
</nav>
<section id="waysToHelp">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<img src="img/uf_10.jpg" class="img-fluid float-right ml-4">
<h1 class="text-center">Ways To Help</h1>
<p>Pretium vulputate sapien nec sagittis aliquam malesuada bibendum arcu. Lacinia quis vel eros donec ac. Arcu cursus vitae congue mauris rhoncus aenean vel elit scelerisque. Faucibus turpis in eu mi bibendum. Massa ultricies mi quis hendrerit. Bibendum ut tristique et egestas quis. Nisi vitae suscipit tellus mauris a. Lobortis feugiat vivamus at augue eget. Placerat vestibulum lectus mauris ultrices eros in cursus turpis massa. Pellentesque elit ullamcorper dignissim cras. Pellentesque sit amet porttitor eget dolor morbi non arcu risus. Tellus id interdum velit laoreet id donec ultrices tincidunt. Et egestas quis ipsum suspendisse ultrices gravida dictum fusce. Adipiscing diam donec adipiscing tristique risus. Mattis vulputate enim nulla aliquet porttitor lacus luctus accumsan tortor. Dictum sit amet justo donec enim diam. Porttitor lacus luctus accumsan tortor posuere ac ut consequat. Ultricies tristique nulla aliquet enim.<br><br>
Congue nisi vitae suscipit tellus mauris a diam maecenas sed. Risus in hendrerit gravida rutrum quisque. Tristique et egestas quis ipsum suspendisse ultrices gravida dictum. Ipsum consequat nisl vel pretium lectus quam id. Ut sem viverra aliquet eget sit amet. Sed euismod nisi porta lorem mollis aliquam ut porttitor leo. Semper quis lectus nulla at volutpat diam ut. Risus at ultrices mi tempus. Eu feugiat pretium nibh ipsum consequat nisl. Eu scelerisque felis imperdiet proin fermentum. Lorem sed risus ultricies tristique nulla aliquet enim tortor at. Sit amet mauris commodo quis imperdiet massa. Urna porttitor rhoncus dolor purus. Molestie ac feugiat sed lectus vestibulum mattis ullamcorper velit.</p>
</div><!--column-->
</div><!--row-->
</div><!--container-->
</section>
</body>
解决方案
请正确阅读文档:该data-spy
属性将位于导航之外的 div 上,并带有一个data-target
表示所选导航的
a
由于href ,它必须是标签。它转换哈希url,直接在url中输入也可以访问。这是它如何工作的基本原理。
你可以这样做 -
<button type="button" class="btn btn-outline-light" role="button"
id="waysToHelp"><a href="#waysToHelp">ways to help</a></button>
<ul class="navbar-nav ml-auto">
<li class="nav-item active">
<a class="nav-link" href="#ourStory">Our Story<span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="#gallery">Gallery</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#blog">Blog</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#contact">Contact</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#waysToHelp">ways to help</a>
</li>
<form class="form-inline" id="button">
<button type="button" class="btn btn-outline-light" role="button" id="waysToHelp"><a href="#waysToHelp">ways to help</a></button>
</form>
</ul>
推荐阅读
- python-3.x - 如何在 Pyspark 函数“Withcolumn”中传递列表
- python - 在 Visual Studio Code 中运行 Python 代码有困难,在 Python shell 中运行,但不在此处
- xml - 如何通过将 xslt 导入另一个 xslt 来获取输入值?
- macos - 使用 docker 在 Mac 和 nginx 中安装 Nginx
- python - 是否可以检查计算机是否使用 python 连接到域?
- python - 康威的生命游戏推进网格(与上一个不同!)
- javascript - 可以设置网站的加载时间吗?
- installation - Silverstripe 4.6 setup .env - vars,缺少 install.php,语言?
- r - 如何在 R 中为纵向设计正确设置 lmer?
- c# - 仅当其他三个 MVVM 对象已启用时才启用 MVVM 对象