css - 在 DIV 中水平居中 UL

标签 css html center

我在 div 中有一个 ul。我想把它居中。这是 fiddle

HTML

<div id="menu-top">
   <div id="menu-container">
      <div id="menu-mask">
         <ul id="menu">
            <li><a href="#">Home</a></li>
            <li><a href="#">Home</a></li>
            <li><a href="#">Home</a></li>
            <li><a href="#">Home</a></li>
            <li><a href="#">Home</a></li>
         </ul>
      </div>
   </div>
</div>

CSS

body {
    background-color: #000;
    overflow: hidden;
}

#menu-top {
    position: absolute;
    display: block;
    width: 100%;
    height: 26px;
    top: 0px;
    z-index: 9;
}

#menu-container {
    width: 840px;
    margin: auto;
}

#menu-mask {
    display: inline-block;
    height: 26px;
    margin: auto;
    overflow: hidden;
    position: relative;
    top: 0;
    width: 800px;
}

#menu {
    position: absolute;
    display: block;
    left: 0px;
    top: 0px;
    height: 26px;
    margin: auto;
    padding: 0px;
    width: 100%;
}

#menu li {
    padding-right: 20px;
    clear: none;
    float: left;
    display: inline;
}

#menu li a {
    font-size: 12px;
    line-height: 26px;
    letter-spacing: 1.5px;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
}

最佳答案

开始吧...将您的#menu 更改为:

#menu {
    position: absolute;
    display: block;
    margin-left:25%;
    margin-right:25%;
    margin-top:auto;
    margin-bottom:auto;
    top: 0px;
    height: 26px;
    padding: 0px;
    width: 100%;
}

margin-left 和 margin-right 设置将使您的菜单在页面上居中。我在您的 JSFiddle 中对其进行了快速测试,以确保其正常工作。

哦,这里是更新后的 JSFiddle 显示的变化...... http://jsfiddle.net/LyJz9/7/

关于css - 在 DIV 中水平居中 UL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17536633/

相关文章:

javascript - 响应式等高div不指定高度

html - 我们可以用 CSS3 动画改变背景图片吗

css - 如何让溢出 block 正常工作()

html - 使用固定的右 td 动态调整左 td 的大小

ios - 将通知中心设置为单次滑动还是两次滑动

html - 如何为 html 或 css 中的文本创建自定义下划线或突出显示?

html - 在视口(viewport)中调整图像

javascript - 为 HTML5 游戏添加游戏加载器

html - 不能水平对齐一个div

css - 如何将 'center' <div> 用于移动设备