塊狀元素居中(三)

水平居中總結-不定寬塊狀元素方法(三)

方法三:通過給父元素設置 float,然後給父元素設置 position:relative 和 left:50%,子元素設置 position:relative 和 left:-50% 來實現水平居中。

代碼如下:

<body>
<div class="container">
    <ul>
        <li><a href="#">1</a></li>
        <li><a href="#">2</a></li>
        <li><a href="#">3</a></li>
    </ul>
</div>
</body>

css代碼:

<style>
.container{
    float:left;
    position:relative;
    left:50%
}

.container ul{
    list-style:none;
    margin:0;
    padding:0;
    
    position:relative;
    left:-50%;
}
.container li{float:left;display:inline;margin-right:8px;}
</style>


<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>

    <style>
        .wrap{
            float:left;//<strong>塊元素不那麼長,變得適應文字的長度了</strong>
            position:relative;
            left:50%;//<strong>右移父元素寬的50%</strong>
            background-color:rgba(229,60,55,0.5);

        }

        .wrap-center{

            background-color:rgba(73,172,72,0.5);

            position:relative;
            left:-50%;//<strong>左移父元素寬的50%</strong>
        }

    </style>
</head>
<body>

<div class="wrap">
    <div class="wrap-center">我們來學習一下這種方法。</div>
</div>
</body>


</html>


父元素left:50% 左邊留出50%;

子元素 left:-50% ,由於塊元素不設寬 默認是父元素內的100%寬度,所以和父元素重合,寬爲50%,再左移50%,相當於移原來位置的50%,

這種方法可以保留塊狀元素仍以 display:block 的形式顯示,優點不添加無語議表標籤,不增加嵌套深度,但它的缺點是設置了 position:relative,帶來了一定的副作用。

這三種方法使用得都非常廣泛,各有優缺點,具體選用哪種方法,可以視具體情況而定。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章