亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CSS布局中有關水平和垂直居中的方法總結

發布時間:2021-08-10 18:15:54 來源:億速云 閱讀:117 作者:chen 欄目:web開發

這篇文章主要介紹“CSS布局中有關水平和垂直居中的方法總結”,在日常操作中,相信很多人在CSS布局中有關水平和垂直居中的方法總結問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”CSS布局中有關水平和垂直居中的方法總結”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!





先來說說水平居中。

CSS水平居中的方法:

1、最常見的margin方法:

給元素設置一個顯示式的寬度,然后加上margin的左右值為auto,示例:

代碼如下:


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
.center {
width: 960px;
margin-left: auto;
margin-right: auto;
}
</style>
</head>
<body>
<div class="center">
</div>
</body>
</html>


上面這個是有帶有寬度的div塊。如果是沒有設置的div塊,我們還可以這樣設置,exp:

代碼如下:


.center {
margin: 0 auto;
}


如此這般!就可以了!

0表示設置元素center的上下外邊距為0。

優點:實現方法簡單易懂,瀏覽器兼容性極強;
缺點:擴展性差,無法自適應未知項狀況,而且容易出現元素擠壓的情形

2、text-again:center

這是大家都很熟悉并且經常使用到的文本居中。簡單、快捷,暴力、方便。缺點就是只能用于文本
還是做個例子:

代碼如下:


.center{
border: 1px solid maroon;
width: 200px;
text-align: center;
height: 100px;
}
<div class="center">
這里是文本
</div>


第二種就醬紫了。

3、使用inline-block 和 text-again 使塊級元素居中的方法:

代碼如下:


<span > .pagination {
text-align: center;
}
.center {
display: inline-block;
zoom: 1;
}
t;div class="pagination">
<div class="center">
這里是文本
</div>
t;/div></span>


使用該方法的關鍵點在于需要在元素的父級元素中設置text-center屬性為center

這中方法簡單,擴展性強。缺點就是要解決inline-block的兼容的問題。

4、利用浮動的包裹性和相對定位的百分比數據值特性,傳說稱之為“相對浮動”:

這里我給大家做個例子大家就都明白了.

代碼如下:


<span ><span > </span>.pagination {
<span > </span>float: left;
<span > </span>position: relative;
<span > </span>left: 50%;
<span > </span>}
<span > </span>.center {
<span > </span>float: left;
<span > </span>position: relative;
<span > </span>right: 50%;
<span > </span>}</span>


通過給父元素設置浮動float和相對定位在向左移動50%,再給元素設置浮動float和相對定位并讓其向右移動50%來實現的水平居中。
優點:擴展性強,兼容性強;
缺點:使用了浮動需要清除,并且該方法理解起來比較困難。

5、使用絕對定位和負邊距居中;

代碼如下:


<span > .center {
position: absolute;
width: 寬度值;
left: 50%;
margin: -(寬度值/2);
}</span>


該方法在不知具體寬度時并無法使用,我們可以和方法四結合起來:

代碼如下:


.pagination {
position: relative;
}
.pagination ul {
position: absolute;
left: 50%;
}
.pagination ul li {
line-height: 25px;
margin: 0 5px;
float: left;
position: relative;
right: 50%;
}


優點:擴展性強,兼容性強;

缺點:理解起來較為困難。

6、CSS3的flex(伸縮盒模型)實現水平居中。

代碼如下:


.pagination {
display: -webkit-box;
-webkit-box-orient: horizontal;
-webkit-box-pack: center;
display: -moz-box;
-moz-box-orient: horizontal;
-moz-box-pack: center;
display: -o-box;
-o-box-orient: horizontal;
-o-box-pack: center;
display: -ms-box;
-ms-box-orient: horizontal;
-ms-box-pack: center;
display: box;
box-orient: horizontal;
box-pack: center;
}


優點:實現便捷,擴展性強;
缺點:兼容性差。

7、CSS3的fit-content實現水平居中方法。

代碼如下:


.pagination ul {
width: -moz-fit-content;
width:-webkit-fit-content;
width: fit-content;
margin-left: auto;
margin-right: auto;
}


優點:簡單易懂,擴展性強;
缺點:瀏覽器兼容性差。

8、利用table元素實現水平居中。

代碼如下:


.table-center {
margin: 0 auto;
}


使用table作為容器的方法來實現,添加了無意義的標簽。

table標簽本身并不是塊級元素,當我們不設置table的寬度的時候,table里面的寬度 是由它內部的元素的寬度撐起來的,這樣我們就可以通過設 置table水平居中從而使它內部的元素居中了。

優點:簡單易懂;
缺點:增加了無意義的標簽。

9、通過設計隱藏的div框來使顯示的內容居中。

代碼如下:


.div-left {
display:inline-block;
visibility:hidden;
width:10%;
}
.center {
display:inline-block;
}
.div-right {
display:inline-block;
visibility:hidden;
width:10%;
}


center寬度將自適應,左右兩邊邊距均為div的寬度,因為左右兩邊div隱藏,所以我們見到的內容將居中對齊;

優點:簡單易懂;
缺點:局限性太大。

10、padding方法。

代碼如下:


.center {
padding: 15px 200px;
}


使內容的左右兩邊有相同的內邊距,那么在用戶眼中的內容就是居中對齊的。

優點:簡單易懂;
缺點:使用時需要不斷調試距離,比較麻煩。

CSS垂直居中的方法:

1、行高line-height設置;

代碼如下:


.center {
height: 50px;
line-height: 50px;
}


使用行高line-height設置垂直居中只需要使行高和元素高度一樣即可。

優點:使用方便,簡單易懂;
缺點:元素內內容只能是文本和圖片,而且文本和圖片不能共存,不然效果差到惡心。

2、絕對定位和負邊距是元素垂直居中。

代碼如下:


.center {
position: absolute;
top: 50%;
height: 高度值;
margin: -(高度值/2);
}


優點:結果簡單明了,使用方便;
缺點:由于固定高度,當文本內容超過限制時,將出現不可預料的情況。

3、使用display:table-cell 和 vertical-align 使元素垂直居中

代碼如下:


.center {
display:table-cell; /*讓元素以表格的單元素格形式渲染*/
vertical-align: middle; /*使用元素的垂直對齊*/
}


優點:適用范圍廣,簡單易懂;
缺點:兼容性問題。

4、使用padding讓元素內容垂直居中。

代碼如下:


.center {
padding: 30px 10px;
}


不給容器固定高度,并在容器上下設置相同的padding值。

優點:簡單易懂,結構清晰,并且兼容所有瀏覽器;
缺點:不能給容器固定高度。

到此,關于“CSS布局中有關水平和垂直居中的方法總結”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

css
AI

乐昌市| 杨浦区| 普陀区| 邵阳市| 射洪县| 澄城县| 云霄县| 乳源| 丽江市| 曲阜市| 浦东新区| 宣化县| 达拉特旗| 龙州县| 新闻| 阳谷县| 云阳县| 正蓝旗| 乐清市| 衡水市| 商河县| 宜都市| 巫溪县| 新丰县| 海口市| 阳新县| 泰兴市| 新沂市| 莎车县| 玉龙| 荃湾区| 修水县| 宜城市| 通江县| 石景山区| 清镇市| 金阳县| 合阳县| 汕尾市| 许昌县| 达日县|