【问题标题】:Navbar not centering correctly, slightly more white space to the left of it导航栏未正确居中,左侧的空白区域稍多
【发布时间】:2021-02-08 23:27:03
【问题描述】:

我的导航栏没有正确居中,这让我抓狂——左侧的空白区域稍微多一些。非常感谢你。这是代码

HTML:

<div class="navbar">
    <ul class="navitems">
        <li>
            <a class="current" href="index.html">Home</a>
        </li>
        <li>
            <a href="podcasts.html">Podcasts</a>
        </li>
        <li>
            <a href="articles.html">Articles</a>
        </li>
        <li>
            <a href="merch.html">Merch</a>
        </li>
        <li>
            <a href="aboutus.html">About Us</a>
        </li>
    </ul>   
</div>

CSS:

body {
    margin:0
}

.navbar {
    text-align: center;
    border: 1px solid black;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.navitems ul {
    list-style: none;
}
.navitems li {
    display: inline-block;
    padding-top: 1.5%;
    padding-bottom: 1.5%;
    padding-right: 3%;
    padding-left: 3%;
    border: 1px solid blue;
    width: 12%;
    font-size: 20px;
}
.navitems a {
    color: black;
    text-decoration: none;
    font-family: georgia;
}
.navitems li:hover a{
    transition: all ease-in-out .5s;
    color: #f88122;
    text-decoration: underline;
}

【问题讨论】:

    标签: html css navbar centering navigationbar


    【解决方案1】:

    如果你检查你的代码,你会发现你的选择器在.navitems是错误的你不需要添加ul并且有padding-left对于 ul,因此填充应为零。 祝你好运

    body {
        margin:0
        }
    
        .navbar {
        text-align: center;
        border: 1px solid black;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        }
        .navitems { /* Change the css selector */
          list-style: none;
          padding: 0 !important; /* Add this line */
        }
        .navitems li {
        display: inline-block;
        padding-top: 1.5%;
        padding-bottom: 1.5%;
        padding-right: 3%;
        padding-left: 3%;
        border: 1px solid blue;
        width: 12%;
        font-size: 20px;
        }
        .navitems a {
        color: black;
        text-decoration: none;
        font-family: georgia;
        }
        .navitems li:hover a{
        transition: all ease-in-out .5s;
        color: #f88122;
        text-decoration: underline;
        }
    <div class="navbar">
    
        <ul class="navitems p-0">
        <li><a class="current" href="index.html">Home</a></li><li><a href="podcasts.html">Podcasts</a></li><li><a href="articles.html">Articles</a></li><li><a href="merch.html">Merch</a></li><li><a href="aboutus.html">About Us</a></li>
        </ul>   
        </div>

    【讨论】:

      【解决方案2】:
      1. &lt;ul&gt; 标签具有默认的 padding-inline-start 样式,因此需要重置该值。
      2. 要使项目居中对齐,需要在&lt;li&gt; 项目上设置vertical-align: middle。
      3. .navitems ul 表示 &lt;ul&gt; 选择器内的 .navitems 选择器。从您的 html 代码中,您应该将其更改为 ul.navitems。

      下面是工作的sn-p。

      body {
        margin: 0
      }
      
      .navbar {
        text-align: center;
        border: 1px solid black;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
      }
      
      ul.navitems {
        list-style: none;
        
        padding-inline-start: 0;
      }
      
      .navitems li {
        display: inline-block;
        padding-top: 1.5%;
        padding-bottom: 1.5%;
        padding-right: 3%;
        padding-left: 3%;
        border: 1px solid blue;
        width: 12%;
        font-size: 20px;
        
        vertical-align: middle;
      }
      
      .navitems a {
        color: black;
        text-decoration: none;
        font-family: georgia;
      }
      
      .navitems li:hover a {
        transition: all ease-in-out .5s;
        color: #f88122;
        text-decoration: underline;
      }
      <div class="navbar">
        <ul class="navitems">
          <li><a class="current" href="index.html">Home</a></li>
          <li><a href="podcasts.html">Podcasts</a></li>
          <li><a href="articles.html">Articles</a></li>
          <li><a href="merch.html">Merch</a></li>
          <li><a href="aboutus.html">About Us</a></li>
        </ul>
      </div>

      【讨论】:

      • @Kyle 不要忘记您可以将问题标记为“已接受”和/或投票:)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      • 2015-05-29
      • 2019-10-09
      相关资源
      最近更新 更多