【问题标题】:Navigation Bar text aligning backwards (CSS)导航栏文本向后对齐 (CSS)
【发布时间】:2015-09-24 18:44:15
【问题描述】:

我正在开发我的第一个网站,但我遇到了导航栏的问题。我正在使用 CSS 规则来对齐栏,但不幸的是,当我将规则设置为 float:right; 时,我的文本向右浮动,但它在栏上向后排列。如何将文本浮动到右侧并正确对齐文本?

.nav ul li {
  display: inline-block;
  float: right;
  padding: 10px 10px;
}
.nav {
  background-color: black;
  position: fixed;
  width: 100%;
  top: 0px;
  margin: auto;
  font-weight: bold;
  border-bottom: 2px solid orange;
  margin-top: 5px;
}
.nav ul li a {
  color: orange;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0px 10px;
}
<div class="nav">
  <ul>
    <li><a href="#">Home</a>
    </li>
    <li><a href="#">About</a>
    </li>
    <li><a href="#">Contact</a>
    </li>
    <li><a href="#">Portfolio</a>
    </li>
    <li><a href="#">FAQ</a>
    </li>
  </ul>
</div>

【问题讨论】:

    标签: html css navigation


    【解决方案1】:

    您需要浮动ul 列表,而不是单个列表项li

    li 上设置float: right 允许第一个列表项首先向右对齐,然后其余项类似地占据它们的位置。它导致列表的方向从右到左。

    .nav ul {
      float: right; /* Added */
    }
    .nav ul li {
      display: inline-block;
      padding: 10px 10px;
      /* float: right; Removed */ 
    }
    .nav {
      background-color: black;
      position: fixed;
      width: 100%;
      top: 0px;
      margin: auto;
      font-weight: bold;
      border-bottom: 2px solid orange;
      margin-top: 5px;
    }
    .nav ul li a {
      color: orange;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      padding: 0px 10px;
    }
    <div class="nav">
      <ul>
        <li><a href="#">Home</a>
        </li>
        <li><a href="#">About</a>
        </li>
        <li><a href="#">Contact</a>
        </li>
        <li><a href="#">Portfolio</a>
        </li>
        <li><a href="#">FAQ</a>
        </li>
      </ul>
    </div>

    【讨论】:

    • 哦.. 我们有同样的答案。 :) 让我删除我的。
    • @CodeRomeos 如果我们有相同的答案就没有问题 ;) 只需几秒钟。
    猜你喜欢
    • 1970-01-01
    • 2018-09-15
    • 1970-01-01
    • 1970-01-01
    • 2018-06-28
    • 1970-01-01
    • 2012-06-08
    • 2015-04-22
    • 1970-01-01
    相关资源
    最近更新 更多