国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

完美實現CSS垂直居中的11種方法

2020-10-23 18:27:08
字體:
來源:轉載
供稿:網友

本人前端小白,正在做一個小程序開發的項目,css樣式調整搞的頭都大了。關于垂直居中,已嘗試了文中的幾個垂直居中css樣式設置,已成功解決我的問題,故轉載來備份下。

CSS垂直居中11種實現方法分別如下:

1. 使用絕對定位和負外邊距對塊級元素進行垂直居中

html代碼:

<div id="box">  <div id="child">我是測試DIV</div></div></pre>css代碼:#box {  width: 300px;  height: 300px;  background: #ddd;  position: relative;} #child {  width: 150px;  height: 100px;  background: orange;  position: absolute; top: 50%;  margin: -50px 0 0 0;  line-height: 100px;}

運行結果如下:

這個方法兼容性不錯,但是有一個小缺點:必須提前知道被居中塊級元素的尺寸,否則無法準確實現垂直居中。

2. 使用絕對定位和transform

html代碼:

<div id="child"> 我是一串很長很長很長很長很長很長很長很長很長很長很長很長很長很長很長很長的文本 </div></pre>css代碼:#box {  width: 300px;  height: 300px;  background: #ddd;  position: relative;} #child {  background: #93BC49;  position: absolute;  top: 50%;  transform: translate(0, -50%);}

運行結果如下:

這種方法有一個非常明顯的好處就是不必提前知道被居中元素的尺寸了,因為transform中translate偏移的百分比就是相對于元素自身的尺寸而言的。

3. 另外一種使用絕對定位和負外邊距進行垂直居中的方式

html代碼:

<div id="box">  <div id="child">我也是個測試DIV</div></div></pre>css代碼:#box {  width: 300px;  height: 300px;  background: #ddd;  position: relative;} #child {  width: 50%;  height: 30%;  background: pink;  position: absolute;  top: 50%;  margin: -15% 0 0 0;}

運行結果如下:

這種方式的原理實質上和前兩種相同。補充的一點是:margin的取值也可以是百分比,這時這個值規定了該元素基于父元素尺寸的百分比,可以根據實際的使用場景來決定是用具體的數值還是用百分比。

4. 絕對定位結合margin: auto

html代碼:

<div id="box">  <div id="child">呆呆今天退役了(。

主站蜘蛛池模板:
个旧市|
新巴尔虎左旗|
博乐市|
肃南|
安溪县|
西林县|
浪卡子县|
碌曲县|
华容县|
乌苏市|
沙雅县|
本溪市|
蚌埠市|
韶山市|
呈贡县|
西昌市|
民乐县|
喀喇|
大理市|
华宁县|
云南省|
尚义县|
宜君县|
伊春市|
长武县|
静乐县|
寿宁县|
罗平县|
彩票|
汶上县|
邵阳县|
康定县|
东兰县|
盐津县|
修武县|
靖江市|
桂平市|
灵台县|
宁晋县|
博爱县|
华容县|