CSS的居中(水平 垂直)設(shè)置方法

水平居中

行內(nèi)元素,水平居中的時候通過給父元素設(shè)置text-align:center來實現(xiàn)

<body>
  <div class="txtCenter">父容器內(nèi)水平居中顯示</div>
</body>
<style>
  .txtCenter{
    text-align:center;
  }
</style>

塊元素定寬塊狀不定寬塊狀元素

定寬塊狀元素 通過語句margin:0 auto;實現(xiàn)(直接margin:auto;也可以)

div{
  width:200px; 
  margin:0 auto;
/* margin-left 與 margin-right 設(shè)置為 auto */
}

不定寬 的可以3種方式

  1. 加入table標簽
    利用table標簽的長度自適應性---即不定義其長度也不默認父元素body的長度(table其長度根據(jù)其內(nèi)文本長度決定),因此可以看做一個定寬度塊元素,然后再利用定寬度塊狀居中的margin的方法,使其水平居中。
    操作方法:
    第一步:為需要設(shè)置的居中的元素外面加入一個 table 標簽 ( 包括 <tbody>、<tr>、<td> )
<div>
 <table>
  <tbody>
    <tr><td>
    <ul>
        <li>文本1</li>
        <li>文本2</li>
    </ul>
    </td></tr>
  </tbody>
 </table>
</div>

第二步:為這個 table 設(shè)置“左右 margin 居中”(和定寬塊狀元素的方法一樣)

<style>
table{  border:1px solid; margin:0 auto;}
</style>

2.display:inline變?yōu)樾袃?nèi)元素,使用text-align:center實現(xiàn)

3.浮動父容器position:relative,相對定位,設(shè)置left為50%實現(xiàn)
原理:

  1. 把父元素浮動到左邊,同時向右偏移50%,相當于把父元素的左邊緣對齊到整行的中間
  2. 把子元素向右偏移50%,這個50%是父元素的50%,父容器的寬度剛好就等 于子元素的寬度,也是子元素本身的50%,這樣剛好就居中了
    (可以在父元素中添加一行clear:both(作用是清除兩側(cè)浮動,獨占一行))
<style>
.container{  float:left; position:relative; left:50%}
</style>

垂直居中

這個介紹的很全面
https://www.qianduan.net/css-to-achieve-the-vertical-center-of-the-five-kinds-of-methods/

在這里把作者推薦的方法貼出來了

在 content 元素外插入一個 div。設(shè)置此 div height:50%; margin-bottom:-contentheight;。
content 清除浮動,并顯示在中間。

<div id="floater">  
    <div id="content">Content here</div>
</div>
#floater {
    float: left;
    height: 50%;
    margin-bottom: -120px;
}

#content {
    clear: both;
    height: 240px;
    position: relative;
}

優(yōu)點:

適用于所有瀏覽器
沒有足夠空間時(例如:窗口縮小) content 不會被截斷,滾動條出現(xiàn)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 14,125評論 1 92
  • 一 外部式css樣式 (也可稱為外聯(lián)式)就是把css代碼寫一個單獨的外部文件中,這個css樣式文件以“.css...
    KunMitnic閱讀 1,120評論 0 1
  • 水平居中設(shè)置-行內(nèi)元素 我們在實際工作中常會遇到需要設(shè)置水平居中的場景,比如為了美觀,文章的標題一般都是水平居中顯...
    CAICL閱讀 502評論 0 3
  • CSS格式化排版 1、字體 我們可以使用css樣式為網(wǎng)頁中的文字設(shè)置字體、字號、顏色等樣式屬性。下面我們來看一個例...
    張文靖同學閱讀 1,368評論 0 3
  • 本文主要是起筆記的作用,內(nèi)容來自慕課網(wǎng). 認識CSS樣式 CSS全稱為“層疊樣式表 (Cascading Styl...
    0o凍僵的企鵝o0閱讀 2,750評論 0 30

友情鏈接更多精彩內(nèi)容