简单的导航栏(初学者)

Simple navigation bar (Beginner)

我刚刚开始学习 html 我的软件开发老师 class 告诉我应该开始尝试自己的编程,所以我决定尝试做一个简单的网站。如您所见,我还没有走多远,一直在研究如何制作导航栏。我希望导航栏上的每个框都可以单击并能够 link 到正确的网页。我确实尝试在每个 li 之前放置 a 标签并且没有图像映射,只要框能够 link 到适当的网页,它就可以满足我的要求,但是之间有一个 space我不想要的每个盒子,这也导致第 6 个盒子被推到第 1 个盒子下面。使用图像映射,没有 links,当我检查元素时,它说图像映射是 0 x 0。让我知道我在导航栏上做错了什么,或者是否有更好的方法来做到这一点。 HTML:

body {
  background-color: #FFFFFF;
  margin: 0;
}
#name {
  font-size: 19pt;
  margin-top: 0;
  padding-top: 0;
  width: 100%;
  background-image: url(wood.png);
  height: 81px;
  display: block;
}
h2.Title {
  position: absolute;
  margin-bottom: 0;
  padding-bottom: 0;
  left: 535;
  top: 1;
}
h2.TitleShadow {
  position: absolute;
  left: 533;
  top: 0;
  color: #368BC1;
}
#navbar {
  display: table;
  height: 30px;
  width: 100%;
  padding-left: 0;
  position: absolute;
  left: 0;
  top: 65;
}
#navbar li {
  display: table-cell;
  height: 30px;
  width: 16.666666667%;
  line-height: 30px;
  text-align: center;
  border: 1px solid black;
  white-space: nowrap;
  background-color: #F8F8F8;
}
<html>

<head>
  <title>Noah's Sports Cards</title>
  <link href="home.css" rel="stylesheet" type="text/css" media="screen, tv, tty" />
</head>

<body>
  <div id="name">
    <h2 class="Title">Noah's Sports Cards</h2>
    <h2 class="TitleShadow">Noah's Sports Cards</h2>
  </div>
  <ul id="navbar" usemap="#navMap">
    <li>Home</li>
    <li>Albums</li>
    <li>Random</li>
    <li>Memorbilia</li>
    <li>Tools</li>
    <li>About</li>
  </ul>
  <div>
    <map id="navMap">
      <area shape="rect" coords="0, 82, 227.667, 113" href="home.htm" />
      <area shape="rect" coords="227.667, 82, 455.334, 113" href="albums.htm" />
      <area shape="rect" coords="455.334, 82, 683.001, 113" href="random.htm" />
      <area shape="rect" coords="683.001, 82, 910.668, 113" href="memorbilia.htm" />
      <area shape="rect" coords="910.668, 82, 1138.335, 113" href="tools.htm" />
      <area shape="rect" coords="1138.335, 82, 1366, 113" href="about.htm" />
    </map>
  </div>
</body>

</html>

不要使用地图,之后您的页面语义将会丢失。 与 links 相同的一段代码(只是 <ul> 部分):

<ul id="navbar">
  <li>
    <a href="home.htm">Home</a>
  </li>
  <li>
    <a href="albums.htm">Albums</a>
  </li>
  <li>
    <a href="random.htm">Random</a>
  </li>
  <li>
    <a href="memorbilia.htm">Memorbilia</a>
  </li>
  <li>
    <a href="tools.htm">Tools</a>
  </li>
  <li>
    <a href="about.htm">About</a>
  </li>
</ul>

然后在 CSS 中,只需添加此行即可将全宽添加到 link 并将其解析为一个块,除了删除蓝色和下划线:

#navbar li a { color: #000; text-decoration: none; width: 100%; display: inline-block;}

首先,我建议您开始使用正确的缩进编写代码。对于您自己和阅读您代码的其他人来说,阅读这样的代码要困难得多。

要在您的导航栏中创建链接,只需执行如下操作:

 <nav>
  <ul>
    <li><a href="index.html">Home</a></li>
    <li><a href="album.html">Album</a></li>
    <li><a href="random.html">Random</a></li>
    <li><a href="memorbilia.html">Memorbilia</a></li>
    <li><a href="tools.html">Tools</a></li>
    <li><a href="about.html">About</a></li>
  </ul>
</nav>

如果您在元素和元素位置之间遇到 space 问题,那只是 CSS 的问题。

将您的代码复制到 https://jsfiddle.net/ 会生成一个集群页面,因此很难说出您的问题所在。

如果您需要更好的帮助,我建议您编辑 post 并提供更好的信息并删除不必要的内容。

导航栏

        <div class="collapse navbar-collapse" id="#navbarSupportedContent">
            <ul class="navbar-nav mr-auto">
                <li class="navbar-item active">
                    <a class="nav-link" href="#/">Home<span class="sr-only">(current)</span></a>
                </li>
                <li class="navbar-item">
                <a href="#">Link</a>
                </li>
                <li class="navbar-item dropdown">
                    <a class="nav-link dropdown-toggler" href="#" id="navbarDropdown" role="button" data-toggler="dropdown" aria-haspopup="true" aria-expanded="false">
                    Dropdown
                    </a>
                        <div class="dropdown-menu" aria-labelledby="navbarDropdown">
                            <a class="dropdown-item" href="#">About</a>
                            <a class="dropdown-item" href="#">Another Action</a>
                            <div class="dropdown-divider"></div>
                            <a class="dropdown-item" href="#">One More</a>
                        </div>
                </li>
                    <li class="nav-item">
                        <a class="nav-link disabled" href="#">Disabled</a>
                    </li>
                </ul>
            <form class="form-inline my-2 my-lg-0">
                <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="search">
                <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button>
            </form>
        </div>    
    </nav>