absolute之實現居中的三種方式


居中思想可以由很多方式實現,這篇文章采用absolute實現:由傳統方式開始到absolute獨立使用方式

 

方式一:傳統方式,父容器relateive,子元素absolute,然后left:50%,再margin-left:-width/2

<div class="ago">
   <div class="mid"></div>
</div>

.ago{
    width:400px;
    height:200px;
    background:#ccc;
    position:relative;
}
.mid{
    width:50px;
    height:50px;
    background:red;
    position:absolute;
    left:50%;
    top:50%;
    margin:-25px 0 0 -25px;
}

 

方式二:獨立使用 absolute 一

<div class="nb">
     &nbsp;<div class="middle"></div>
</div>

.nb{
     width:400px;
     height:200px;
     background:#ccc;
     text-align:center;
     overflow:hidden;
}
.middle{
    display:inlineblock;
    *display:inline;*zoom:1;
    width:50px;height:50px;
    background:green;
    position:absolute;
    margin-left:-38px;
    margin-top:75px;
}
/*思想:將內部元素轉化成行內元素,再在要居中的元素前加個空格,相當一個行內元素,
  然后將父元素text-align:center;把行內元素居中顯示了
  然后將要居中的元素absolute,由於獨立使用absolute的跟性特性,它會脫離文檔流,並緊跟在空格的后面
  最后通過調整margin-left的值進行居中
 */

 

方式三:獨立使用 absolute 二,也是我比較推崇方式,尤其是在移動端,各種方便,管它是高矮胖搜呢,就是通吃,自從學會這種方式,媽媽再也不用擔心我的居中了。

<div class="db">
    <div class="dm"></div>
</div>

.db{
    width:400px;
    height:200px;
    background:#ccc;
}
.dm{
    width:50px;
    height:50px;
    background:pink;
    position:absolute;
    left:0;right:0;
    top:0;bottom:0;
    margin:auto;
} 

/*是不是很酷,我已完全不能自拔了*/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM