css布局教程之如何實現(xiàn)垂直居中
前言
最近在總結(jié)前端知識,也參加了一些面試,面試中遇到一道題要求垂直居中,現(xiàn)在對這進(jìn)行一下總結(jié),也好鞏固一下知識。
css實現(xiàn)垂直居中
1.利用line-height實現(xiàn)居中,這種方法適合純文字類的;

<!-- css -->
<style>
.parents {
height: 400px;
line-height: 400px;
width: 400px;
border: 1px solid red;
text-align: center;
}
.child {
background-color: blue;
color: #fff;
}
</style>
</head>
<body>
<!-- html -->
<div class="parents">
<span class="child">css布局,實現(xiàn)垂直居中</span>
</div>
</body>
2.通過設(shè)置父容器相對定位,子級設(shè)置絕對定位,標(biāo)簽通過margin實現(xiàn)自適應(yīng)居中;

<!-- css -->
<style>
.parents {
height: 400px;
width: 400px;
border: 1px solid red;
position: relative;
}
.child {
width: 200px;
height: 100px;
line-height: 100px;
text-align: center;
color: #fff;
background-color: blue;
/* 四個方向設(shè)置為0, 然后通過margin為auto自適應(yīng)居中 */
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
</style>
</head>
<body>
<!-- html -->
<div class="parents">
<span class="child">css布局,實現(xiàn)垂直居中</span>
</div>
</body>
3.彈性布局flex 父級設(shè)置display: flex; 子級設(shè)置margin為auto實現(xiàn)自適應(yīng)居中;

<!-- css -->
<style>
.parents {
height: 400px;
width: 400px;
border: 1px solid red;
display: flex;
}
.child {
width: 200px;
height: 100px;
line-height: 100px;
text-align: center;
color: #333;
background-color: yellow;
margin: auto;
}
</style>
</head>
<body>
<!-- html -->
<div class="parents">
<span class="child">css布局,實現(xiàn)垂直居中</span>
</div>
</body>
4. 父級設(shè)置相對定位,子級設(shè)置絕對定位,并且通過位移transform實現(xiàn);

<!-- css -->
<style>
.parents {
height: 400px;
width: 400px;
border: 1px solid red;
position: relative;
}
.child {
width: 200px;
height: 100px;
line-height: 100px;
text-align: center;
color: #fff;
background-color: green;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
</style>
</head>
<body>
<!-- html -->
<div class="parents">
<span class="child">css布局,實現(xiàn)垂直居中</span>
</div>
</body>
5. 父級設(shè)置彈性盒子,并設(shè)置彈性盒子相關(guān)屬性;

<!-- css -->
<style>
.parents {
height: 400px;
width: 400px;
border: 1px solid red;
display: flex;
justify-content: center; /* 水平 */
align-items: center; /* 垂直 */
}
.child {
width: 200px;
height: 100px;
color: black;
background-color: orange;
}
</style>
</head>
<body>
<!-- html -->
<div class="parents">
<span class="child"></span>
</div>
</body>
6. 網(wǎng)格布局,父級通過轉(zhuǎn)換成表格形式,然后子級設(shè)置行內(nèi)或行內(nèi)塊實現(xiàn)。(需要注意的是:vertical-align: middle使用的前提條件是內(nèi)聯(lián)元素以及display值為table-cell的元素)。

<!-- css -->
<style>
.parents {
height: 400px;
width: 400px;
border: 1px solid red;
display: table-cell;
text-align: center;
vertical-align: middle;
}
.child {
width: 200px;
height: 100px;
color: #fff;
background-color: blue;
display: inline-block; /* 子元素設(shè)置行內(nèi)或行內(nèi)塊 */
}
</style>
</head>
<body>
<!-- html -->
<div class="parents">
<span class="child"></span>
</div>
</body>
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。
相關(guān)文章
- 這篇文章主要介紹了CSS3 不定高寬垂直水平居中的幾種方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起2020-03-26
這篇文章主要介紹了利用css樣式實現(xiàn)表格中字體垂直居中的方法,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-16
CSS3實現(xiàn)水平居中、垂直居中、水平垂直居中的實例代碼
在前端面試中經(jīng)常會遇到css居中效果的實現(xiàn),今天小編給大家分享幾種css垂直水平居中的方法,通過實例代碼給大家講解,需要的朋友參考下吧2020-02-27
手把手教你CSS水平、垂直居中的10種方式(小結(jié))
這篇文章主要介紹了手把手教你CSS水平、垂直居中的10種方式(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著2019-11-07- 這篇文章主要介紹了css常用元素水平垂直居中方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)2019-08-09
- 在前端布局過程中,我們實現(xiàn)水平居中比較簡單,一般通過margin:0 auto;和父元素 text-align: center;就能實現(xiàn)。今天小編給大家?guī)砹薈SS實現(xiàn)垂直居中的幾種方法小結(jié),感興2019-05-14
這篇文章主要介紹了CSS垂直居中的另類實現(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-02





