在网格中居中导航文本

centering nav text within a grid

我试图将我的 8 个导航链接平均放置在我的导航栏中。

这是我的导航 HTML:

 <nav>
    <ul class="nav">
      <li><a href="index.html">Home</a></li>
      <li><a href="destinations.html">Destinations</a></li>
      <li><a href="culture.html">Culture</a></li>
      <li><a href="attractions.html">Attractions</a></li>
      <li><a href="history.html">History</a></li>
      <li><a href="media.html">Media</a></li>
      <li><a href="contact.html">Contact</a></li>
      <li><a href="links.html">Links</a></li>
   </ul>
 </nav>

我正在使用基本网格,并试图将 8 个链接中的每一个平均放置到导航的 1/8 中。

我的 css 网格 :

.col-1-8 {
width:12.5% }

我正在将此 class 应用到 8 里的每一个,但似乎无法使它们全部均等地居中。

如果有人能帮助我,我会很高兴!

谢谢

蒂姆

此代码完全符合您的要求,我认为您没有应用 box-sizing border-box 或 text-align center。

http://codepen.io/anon/pen/WQVQGr

HTML:

 <nav>
    <ul>
      <li><a href="index.html">Home</a></li>
      <li><a href="destinations.html">Destinations</a></li>
      <li><a href="culture.html">Culture</a></li>
      <li><a href="attractions.html">Attractions</a></li>
      <li><a href="history.html">History</a></li>
      <li><a href="media.html">Media</a></li>
      <li><a href="contact.html">Contact</a></li>
      <li><a href="links.html">Links</a></li>
   </ul>
 </nav>

CSS:

*{
    box-sizing: border-box;
}

nav ul {
  background-color:yellow;
  overflow:auto;
  list-style:none;
  padding: 0;
  margin: 0;
  width: 800px; 
}

nav ul>li {
  float:left;
  width: 12.5%;
  text-align: center

}

您可以为此使用 flex

.nav {
  display: flex;
  justify-content: space-around;
  /* justify-content: space-between; */
  
  background: yellow;
  
  margin: 0;
  padding: 0;
  
  list-style: none;
}
<nav>
    <ul class="nav">
      <li><a href="index.html">Home</a></li>
      <li><a href="destinations.html">Destinations</a></li>
      <li><a href="culture.html">Culture</a></li>
      <li><a href="attractions.html">Attractions</a></li>
      <li><a href="history.html">History</a></li>
      <li><a href="media.html">Media</a></li>
      <li><a href="contact.html">Contact</a></li>
      <li><a href="links.html">Links</a></li>
   </ul>
 </nav>