使用 CSS 在 flexbox 中水平居中文本?

Center text horizontally within flexbox using CSS?

我正在尝试为网站制作导航栏。我正在尝试将 link 文本在 div 中水平居中。 text-align: center; 没有成功,align-items: center;justify-content: center; 也没有。有什么建议吗?

#nav {
  display: flex;
  flex-direction: row rtl;
  border-top: 3px dotted #594027;
  border-bottom: 3px dotted #594027;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.navbox {
  flex-wrap: wrap;
  background-color: #594027;
  width: 125px;
  margin: 5px;
  padding: 5px;
}

.navbox a {
  display: inline-block;
  color: white;
  padding: 3px;
  margin-right: auto;
  margin-left: auto;
  text-decoration: none;
}
<div id="nav">
<div class="navbox">
<a href="index.html">Home</a>
</div>
<div class="navbox">
<a href="resume.html">Resumé</a>
</div>
<div class="navbox">
<a href="coursework.html">Coursework</a>
</div>
<div class="navbox">
<a href="accomplishments.html">Accomplishments</a>
</div>
<div class="navbox">
<a href="experience.html">Experience</a>
</div>
<div class="navbox">
<a href="blog.html">Blog</a>
</div>

</div><!--nav->

您可以控制来自父级的文本,为此您需要将 text-align:center 添加到 #nav

#nav {
  display: flex;
  flex-direction: row rtl;
  border-top: 3px dotted #594027;
  border-bottom: 3px dotted #594027;
  width: 100%;
  align-items: center;
  justify-content: center;
  /* Add text-align to Parent */
  text-align:center;
}

.navbox {
  flex-wrap: wrap;
  background-color: #594027;
  width: 125px;
  margin: 5px;
  padding: 5px;
}

.navbox a {
  display: inline-block;
  color: white;
  padding: 3px;
  margin-right: auto;
  margin-left: auto;
  text-decoration: none;
}
<div id="nav">
<div class="navbox">
<a href="index.html">Home</a>
</div>
<div class="navbox">
<a href="resume.html">Resumé</a>
</div>
<div class="navbox">
<a href="coursework.html">Coursework</a>
</div>
<div class="navbox">
<a href="accomplishments.html">Accomplishments</a>
</div>
<div class="navbox">
<a href="experience.html">Experience</a>
</div>
<div class="navbox">
<a href="blog.html">Blog</a>
</div>

</div><!--nav->