html - 在灵活宽度页面的列表中居中水平导航栏

标签 html css list css-position navbar

我已经看到过与此类似的问题,并且我一直在尝试使代码适合我自己的情况,但我就是找不到解决这个问题的方法。

我需要一个居中的水平导航栏,上面有一个带有文本的图像。我已准备就绪,只是无法将整个列表置于页面中心。

这是我的CSS:

#mainnav { 
width: 100%;
text-align: center; }
#mainnav ul {
list-style-type: none;
text-align: center;}
#mainnav li {
display: inline;
float: left;
text-align: center;
margin-left: 3%;
margin-right: 3%;
margin-top: 10px; }
#mainnav a {
display: block;
margin-right: 0% auto;
padding-left: 0% auto; }

这是我的 html:

<div id="mainnav">
<ul><li> <a href="about.html"><img src="images/information_sm.png" border="0" /></a>
<a href="about.html">About Us</a> </li>
<li> <a href="progs.html"><img src="images/power_sm.png" border="0" /></a>
<a href="progs.html">Programs and Initiatives</a> </li>
<li> <a href="resources.html"><img src="images/documents_sm.png" border="0" /> </a>
<a href="resources.html">Resources</a> </li>      
<li><a href="feedback.html"><img src="images/mic_sm.png" border="0"></a>
<a href="feedback.html">Feedback</a></li>
<li><a href="faqs.html"><img src="images/help_sm.png" border="0"></a>
<a href="faqs.html">FAQs</a></li>
<li><a href="news.html"><img src="images/announcement_sm.png" border="0"></a>
<a href="news.html">News & Events</a></li></ul>
</div>

所以我有一个图标,然后在它的正下方是文本。这些相对于彼此居中,但是整个事情需要在页面上居中。

我很接近,但由于 li 下的“margin-left: 5%; margin-right: 5%”规范,它分散得太多了。如果我改变它,它会向左滑动。我如何让它居中并且让它不那么宽,每个列表项之间有这么多空间?

此外,是的,我确实需要具有灵活的宽度,因为这是我构建此页面的工作要求。谢谢!

最佳答案

你需要改变你的CSS如下:你不能水平对齐 float 元素

#mainnav { 
width: 100%;
text-align: center; }
#mainnav ul {
list-style-type: none;
text-align: center;}
#mainnav li {
display: inline-block;
text-align: center;
margin-left: 3%;
margin-right: 3%;
margin-top: 10px; }
#mainnav a {
display: block;
margin-right: 0% auto;
padding-left: 0% auto; }

参见 http://jsfiddle.net/FM2df/1/结果

关于html - 在灵活宽度页面的列表中居中水平导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20338287/

相关文章:

html - 在 rmarkdown html 中调整传单 map 的大小

javascript - 相同 CSS 动画的不同动画持续时间

html - 在基本 html/css 站点中正确对齐 div 元素

c# - 从另一个类访问列表

java - 完美的数字

c# - 检查 List<List<string>> 是否包含字符串

jquery - HTML5 默认电子邮件验证在域部分失败

用于遍历目录/文件树和输出树作为嵌套 UL 的 PHP 脚本

javascript - 从 Express 静态 html 文件调用 $.getJSON() 无法获取数据

jquery - 使用 margin-right 制作动画