您好,登錄后才能下訂單哦!
怎么在css中實(shí)現(xiàn)垂直居中?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
css是一種用來(lái)表現(xiàn)HTML或XML等文件樣式的計(jì)算機(jī)語(yǔ)言,主要是用來(lái)設(shè)計(jì)網(wǎng)頁(yè)的樣式,使網(wǎng)頁(yè)更加美化。它也是一種定義樣式結(jié)構(gòu)如字體、顏色、位置等的語(yǔ)言,并且css樣式可以直接存儲(chǔ)于HTML網(wǎng)頁(yè)或者單獨(dú)的樣式單文件中,而樣式規(guī)則的優(yōu)先級(jí)由css根據(jù)這個(gè)層次結(jié)構(gòu)決定,從而實(shí)現(xiàn)級(jí)聯(lián)效果,發(fā)展至今,css不僅能裝飾網(wǎng)頁(yè),也可以配合各種腳本對(duì)于網(wǎng)頁(yè)進(jìn)行格式化。
css實(shí)現(xiàn)垂直居中
1.利用line-height實(shí)現(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布局,實(shí)現(xiàn)垂直居中</span> </div> </body>
2.通過(guò)設(shè)置父容器相對(duì)定位,子級(jí)設(shè)置絕對(duì)定位,標(biāo)簽通過(guò)margin實(shí)現(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; /* 四個(gè)方向設(shè)置為0, 然后通過(guò)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布局,實(shí)現(xiàn)垂直居中</span> </div> </body>
3.彈性布局flex 父級(jí)設(shè)置display: flex; 子級(jí)設(shè)置margin為auto實(shí)現(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布局,實(shí)現(xiàn)垂直居中</span> </div> </body>
4. 父級(jí)設(shè)置相對(duì)定位,子級(jí)設(shè)置絕對(duì)定位,并且通過(guò)位移transform實(shí)現(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布局,實(shí)現(xiàn)垂直居中</span> </div> </body>
5. 父級(jí)設(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)格布局,父級(jí)通過(guò)轉(zhuǎn)換成表格形式,然后子級(jí)設(shè)置行內(nèi)或行內(nèi)塊實(shí)現(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>
關(guān)于怎么在css中實(shí)現(xiàn)垂直居中問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。