集中导航栏 css/html

Centralize navbar css/html

如果你能帮我解决这个小问题,我将不胜感激(我认为),我只是想让导航栏居中,我不知道具体怎么做,因为我是这方面的新手,再次感谢大家的关注,以及所有能帮助我的人。

我想要导航栏的示例:

<!-- ---- HTML ---- -->

<div id="menu">
<ul>
  <li><a href="#home">Início</a></li>
  <li><a href="#news">Blog</a></li>
  <li><a href="#contact">Relatar erros</a></li>
  <li><a href="#contact">Guia</a></li>
  <li><a href="#contact">Doar </a></li>
  <li><a href="#about">Sobre</a></li>
  <li><a href="#login">Contato</a></li>
  </ul>
</ul>
</div>

<!-- ---- CSS ---- -->

#menu {
    color:white;
    text-align:center;
    padding:5px;
    margin-right: -5px;
    margin-left: -5px;
    margin-top: -4px; }

ul {
    list-style-type: none;  margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #0F0F0F;
    margin-right: -8px;
    margin-left: -8px; }

li {
    float: left;

}

li:last-child {
    border-right: none; }

li a {
    display: block;     
    font: bold 14px Franklin Gothic Demi,Tahoma,Halvetica;
    color: red;
    border-bottom:3px solid #0c0c0c;
    border-style: solid;
    border-width: 0 0 3px 0;
    border-color: black;
    text-align: center;
    padding: 12px 12px;
    text-decoration: none; }

li a:hover:not(.active) {
    background-color: #000000;
    border-bottom:3px solid #ff0000;
    color: white; }

问题是 li 中的 float: left;

只需使用display: inline-block;

#menu {
    color:white;
    text-align:center;
    padding:5px;
    margin-right: -5px;
    margin-left: -5px;
    margin-top: -4px; }

ul {
    list-style-type: none;  margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #0F0F0F;
    margin-right: -8px;
    margin-left: -8px; }

li {
    display: inline-block;

}

li:last-child {
    border-right: none; }

li a {
    display: block;     
    font: bold 14px Franklin Gothic Demi,Tahoma,Halvetica;
    color: red;
    border-bottom:3px solid #0c0c0c;
    border-style: solid;
    border-width: 0 0 3px 0;
    border-color: black;
    text-align: center;
    padding: 12px 12px;
    text-decoration: none; }

li a:hover:not(.active) {
    background-color: #000000;
    border-bottom:3px solid #ff0000;
    color: white; }
<div id="menu">
<ul>
  <li><a href="#home">Início</a></li>
  <li><a href="#news">Blog</a></li>
  <li><a href="#contact">Relatar erros</a></li>
  <li><a href="#contact">Guia</a></li>
  <li><a href="#contact">Doar </a></li>
  <li><a href="#about">Sobre</a></li>
  <li><a href="#login">Contato</a></li>
</ul>
</div>

您可以使用 display:inline-block; 而不是 float:left 并且不要忘记 display:inline-block; 发生的 remove extra spaces

为什么要删除 float:left;.

根据W3C

Floats

A float is a box that is shifted to the left or right on the current line.

所以 text-align:center;li 没有任何影响。

#menu {
  color: white;
  text-align: center;
  padding: 5px;
  margin-right: -5px;
  margin-left: -5px;
  margin-top: -4px;
}
ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #0F0F0F;
  margin-right: -8px;
  margin-left: -8px;
}
li {
  display: inline-block;
}
<div id="menu">
  <ul>
    <li><a href="#home">Início</a>
    </li>
    <li><a href="#news">Blog</a>
    </li>
    <li><a href="#contact">Relatar erros</a>
    </li>
    <li><a href="#contact">Guia</a>
    </li>
    <li><a href="#contact">Doar </a>
    </li>
    <li><a href="#about">Sobre</a>
    </li>
    <li><a href="#login">Contato</a>
    </li>
  </ul>
</div>

你可以这样做:

CSS

ul {
    list-style-type: none;  margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #0F0F0F;
    margin-right: -8px;
    margin-left: -8px; 
    text-align: center;
    }

li {
    display: inline-block;

}

DEMO HERE

试试这个:

 #menu {
    color:white;
    text-align:center;
    padding:5px;
    margin-right: -5px;
    margin-left: -5px;
    margin-top: -4px; }

ul {
    list-style-type: none;  
    overflow: hidden;
    background-color: #0F0F0F;
    margin-right: -8px;
    margin-left: -8px; 
    text-align: center;
    }

li {
    display: inline-block;

}

li:last-child {
    border-right: none; }

li a {
    display: block;     
    font: bold 14px Franklin Gothic Demi,Tahoma,Halvetica;
    color: red;
    border-bottom:3px solid #0c0c0c;
    border-style: solid;
    border-width: 0 0 3px 0;
    border-color: black;
    text-align: center;
    padding: 12px 12px;
    text-decoration: none; }

li a:hover:not(.active) {
    background-color: #000000;
    border-bottom:3px solid #ff0000;
    color: white; }

DEMO HERE