CSS各種置中方法

來源:互聯網
上載者:User
css水平置中的text-align:center 和 margin:0 auto

這兩種方法都是用來水平置中的,前者是針對父元素進行設定而後者則是對子項目。他們起作用的首要條件是子項目必須沒有被float影響,否則一切都是無用功。margin:0 auto

也可以被寫成margin:0 auto 0 auto。不能理解的童鞋們可以自己去找找關於css縮寫的內容。

垂直置中的line-height

什嗎?!margin在垂直置中裡不起作用了?顯然事情確實如此,我們僅有margin:0 auto的用法而沒有auto 0的情況。至於line-height,他也是作用在父元素上,當他的值等於父元素的height值時

,內部的文字就會自動的垂直置中了。此處好像僅僅只能是文字而已,遺憾。

萬能的position大法

這個方法可以說真的是萬能的。當你為一個元素無法置中而困擾的時候,可以果斷的使用他,而且幾乎沒有後遺症,絕對是前端工程師們居家旅行必備的手段之一。

具體的做法很簡單,首先給父元素寫上positon:relative,這麼做是為了給子項目打上position:absolute的時候不會被定位到外太空去。接下去,寫上子項目的height和width,這個似乎是必須的

,某些瀏覽器在解析的時候如果沒有這2個值的話會出現意想不到的錯位。接著就是整個方法的核心,給子項目再打上top:50%;left:50%以及margin-top:一半的height值的的負數;

margin- left:一半的weight值的負數。整理一下之後,可能你會給你的子項目寫上這樣的css(當然,父元素也要先寫上width和height)

{width:100px;height:80px;position:absolute;top:50%;left:50%;margin-left:50px;margin-top:40px}

接下去就重新整理頁面吧,你的子項目已經是置中顯示了。

使用這個方法的好處在於無論你是什麼形式的內容都可以馬上置中,而缺點就是必須對元素有確定的寬高值,否則的話可能就需要通過javascript來進行一些小計算了。

  • 相關文章

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.