我有一个带有弯曲标签的水平导航。我想相对于任何屏幕分辨率将水平导航居中。目前,我的水平导航距离左边距260px。因此,与其以这种方式代替,不考虑屏幕分辨率,只想使其居中于屏幕即可。

base_menu.html

<ul id="toc">
        <li><a href="{% url mmc.views.return_clients %}"><span>Home</span></a></li>
        <li><a href="{% url mmc.views.quote_step1 %}"><span>Create quote/order</span></a></li>
        <li><a href="{% url mmc.views.search_item %}"><span> Item Search</span></a></li>
        <li><a><span>Service orders</span></a><br/>
        <ul class="subnav">
                <li><a href="{% url mmc.views.order_list %}"><span>Storage orders</span></a></li>
                <li><a href="{% url mmc.views.order_list_service 1 %}"><span>Delivery orders</span></a></li>
                <li><a href="{% url mmc.views.order_list_service 2 %}"><span>Collection orders</span></a></li>
        </ul>
        </li>
        <li><a><span>Collection/Delivery</span></a><br/>
        <ul class="subnav">
                <li><a href="{% url mmc.views.service_list 1 %}"><span>Delivery list</span></a></li>
                <li><a href="{% url mmc.views.service_list 2 %}"><span>Collection list</span></a></li>
        </ul>
        </li>
        <li><a><span>Admin Tools</span></a><br/>
        <ul class="subnav">
                <li><a href="{% url mmc.views.invoice_list %}"><span>Export for invoicing</span></a></li>
                <li><a href="{% url mmc.views.dbbackup %}"><span>Backup data</span></a></li>
        </ul>
        </li>
        <li><a href="{% url mmc.views.help_login %}" target="_blank" onclick="return showAddAnotherPopup(this);"><span>Help</span></a></li>
</ul>


base.css

ul#toc {
    height: 2em;
    list-style: none;
    margin-left: 260px;
    padding: 0;
    position: relative;
    width: 100%;
}


ul#toc li{
    background:#ffffff url(../images/tab.png);
    float: left;
    margin: 0 1px 0 0;

}

ul#toc li#drop{
    background-color:#bce6c3;
    float: left;
    margin: 0 1px 0 0;

}
ul#toc span {
    background: url(../images/tab.png) 100% 0;
    display: block;
    line-height: 2em;
    padding-right: 10px;
}

ul#toc a {
    color: #000000;
    height: 2em;
    float: left;
    text-decoration: none;
    padding-left: 10px;
}


ul#toc a:hover {
    background: url(../images/tab2.png);
    text-decoration: underline;
}

ul#toc a:hover  span{
    background: url(../images/tab2.png) 100% 0;

}

最佳答案

像这样更改ul在CSS中的保证金规则:

ul#toc{
     margin: 0 auto;}


这会使浏览器自动等于ul元素两侧的边距。

另外,您还需要给ul#toc一个固定的宽度,因为100%的宽度不能使任何内容居中,因为它适合屏幕的整个宽度。

关于html - 想要居中水平导航,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7819049/

10-11 20:07