html元素水平居中


轉載的:http://www.voidcn.com/article/p-wmdxyijd-bpm.html

一、行內元素水平居中

方法:如果被設置元素為文本、圖片等行內元素時,水平居中是通過給父元素設置 text-align:center 來實現的。

如下:

<body>
<div class="center"><span>行內元素在父容器中水平居中顯示。</span></div>
</body>
<style>
div{
    border:1px solid ;
    margin:20px;
}
.center{
    text-align:center;
}
</style>

二、塊狀元素水平居中

當被設置元素為塊狀元素時,text-align:center 就不起作用了,此時分兩種情況:定寬塊狀元素和不定寬塊狀元素。

1、定寬塊狀元素(塊狀元素的寬度width為固定值)

方法:滿足定寬和塊狀兩個條件的元素可以通過設置“左右margin”值為“auto”來實現居中

如下:

<body>
<div>定寬塊狀元素水平居中。</div>
</body>
<style>
div{
    border:1px solid red;
    margin:20px auto;
    width:200px;/*寬度為固定值,不能寫百分比*/
}
</style>

2、塊狀不定寬元素

方法:

①設置 margin:0 auto;  display:table;

②設置display:inline方法。改變塊級元素的display為inline類型(設置為行內元素顯示),然后使用text-align:center來實現居中效果

③設置position:relative;left:50%,利用相對定位的方式,將元素向左偏移50%。通過給父元素設置float,然后給父元素設置position:relative和left:50%,子元素設置position:relative和left:-50%來實現水平居中

方法①如下:

<div class="wrap">
  不定寬塊狀元素水平居中  
</div>
.wrap{
    background:#ccc;
    margin:0 auto;
    display:table;
}

方法②如下:

<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>

<style>
.container{text-align:center;}
.container ul{list-style:none;margin:0;padding:0;display:inline;}
.container li{margin-right:8px;display:inline;}
</style>

方法③如下:

<div class="wrap">
    <div class="wrap-center">不定寬塊狀元素水平居中。</div>
</div>
.wrap-center{
    background:#ccc;
    position:relative;
    left:-50%;
    
}
.wrap{
    float:left;
    position:relative;
    left:50%;
    
}


免責聲明!

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



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