搜尋

首頁  >  問答  >  主體

html5 - CSS浮动问题 位置偏移了?

css代码如下:

.nav{
    width: 1000px;
    height: 40px;
    background: url("../images/nav_bg.jpg") repeat-x;
    margin: 0 auto;
}


.nav .nav_left{
    float: left;
}

.nav_left li{
    list-style-type: none;
    float: left;
    width: 100px;
    line-height: 40px;
    text-align: center;
}

.nav_left a{
    text-decoration: none;
    color: white;
    font-size: 16px;
    font-family: 微软雅黑;
}

.nav .nav_right{
    float: right;
}

html代码如下:

<p class="nav">
            <p class="nav_left">
                    <ul>
                        <li><a href="#">首页</a></li>
                        <li><a href="#">关于慕课</a></li>
                        <li><a href="#">新闻动态</a></li>
                        <li><a href="#">课程中心</a></li>
                        <li><a href="#">在线课程</a></li>
                        <li><a href="#">人才招聘</a></li>
                    </ul>
                </p>
            <p class="nav_right">
                    <input type="text">
                </p>
        </p>    

效果:

li的flot设置成了left
效果不应该是靠左么 为什么会出现在灰色条的中间呢?
求解

高洛峰高洛峰2840 天前735

全部回覆(3)我來回復

  • ringa_lee

    ringa_lee2017-04-17 14:01:13

    檢查這個logo區域的高度是否異常,有可能就相差幾個像素,導致logo超出了上面白色的header區域,
    底下的nav >li float left的時候位置不夠就靠右了。

    回覆
    0
  • 怪我咯

    怪我咯2017-04-17 14:01:13

    右鍵,審查下就好...
    猜測是ul的預設樣式帶padding的問題

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-17 14:01:13

    因為你的.nav樣式中設定的margin是 margin: 0 auto; 導致容器自動調整左右距離,預設兩邊距離一直,內容區居中顯示。還有一個地方要注意,就是瀏覽器的對ul/li的預設樣式,如chrome:

    效果圖,.nav 容器已經將子節點居中了:

    回覆
    0
  • 取消回覆