摘要:上下左右負(fù)偽元素父容器上設(shè)置用于設(shè)置為行內(nèi)元素的水平居中居中元素自身設(shè)置用于設(shè)置為塊級(jí)元素的水平居中元素寬度固定,且不能浮動(dòng)絕對(duì)定位
?
1、text-align:center;
2、margin:0 auto;
3、display:inline-block; + text-align:center;
4、position:relative; + float:left;
5、line-height
6、上下左右padding
7、position:absolute; + margin:auto;
8、position:absolute; + 負(fù)margin
9、position:absolute; + calc()
10、table-cell + vertical-align + inline-block + text-align
11、偽元素 + vertical-align + inline-block + text-align
12、position:absolute; + transform:translate(-50%, -50%);
13、display:flex;
14、background-position:center;
15、writing-mode
?
父容器上設(shè)置text-align:center; 用于設(shè)置為行內(nèi)元素的水平居中
<style> p{ background-color:#f00; text-align:center; } style> <p>居中p>
?
元素自身設(shè)置margin:0 auto; 用于設(shè)置為塊級(jí)元素的水平居中(元素寬度固定,且不能浮動(dòng)、絕對(duì)定位)
<style> div{ background-color:#099; } p{ width:100px; height:100px; margin:0 auto; background-color:#f00; } style> <div><p>p>div>
?
用于設(shè)置為內(nèi)聯(lián)塊元素的水平居中(元素不能浮動(dòng)、絕對(duì)定位,注意清除inline-block引起的下邊空白)
<style> div{ background-color:#099; text-align:center; } p{ display:inline-block; margin:0; background-color:#f00; } style> <div><p>居中p>div>
?
用于所有元素的水平居中(元素不能絕對(duì)定位,且內(nèi)容若是過多,會(huì)出現(xiàn)橫向滾動(dòng)條,可以在父容器外套一層容器設(shè)置overflow:hidden;)
<style> div{ position:relative; left:50%; float:left; background-color:#099; } p{ position:relative; left:-50%; background-color:#f00; } style> <div><p>居中p>div>
?
用于單行文本的垂直居中(父容器高度固定)
<style> p{ height:100px; background-color:#f00; line-height:100px; } style> <p>居中p>
?
父容器上設(shè)置上下左右padding,用于設(shè)置為內(nèi)聯(lián)塊、塊級(jí)元素的水平垂直居中(常用于按鈕中)
<style> p{ display:inline-block; margin:0; padding:10px; background-color:#f00; } style> <p>居中p>
?
用于設(shè)置為塊級(jí)元素的水平垂直居中(元素寬高固定)
<style> div{ position:relative; height:100px; background-color:#099; } p{ position:absolute; top:0; right:0; bottom:0; left:0; width:50px; height:50px; margin:auto; background-color:#f00; } style> <div><p>p>div>
?
用于設(shè)置為塊級(jí)元素的水平垂直居中(元素寬高固定)
<style> div{ position:relative; height:100px; background-color:#099; } p{ position:absolute; top:50%; left:50%; width:50px; height:50px; margin:-25px 0 0 -25px; background-color:#f00; } style> <div><p>p>div>
?
用于設(shè)置為塊級(jí)元素的水平垂直居中(元素寬高固定,IE8及以下不支持)
<style> div{ position:relative; height:100px; background-color:#099; } p{ position:absolute; top:calc(50% - 25px); left:calc(50% - 25px); width:50px; height:50px; margin:0; background-color:#f00; } style> <div><p>p>div>
?
用于設(shè)置為內(nèi)聯(lián)塊元素的水平垂直居中(元素不能浮動(dòng)、絕對(duì)定位,注意清除inline-block引起的下邊空白)
<style> div{ display:table-cell; width:100px; height:100px; background-color:#099; text-align:center; vertical-align:middle; } p{ display:inline-block; margin:0; background-color:#f00; vertical-align:middle; } style> <div><p>居中p>div>
?
用于設(shè)置為內(nèi)聯(lián)塊元素的水平垂直居中(元素不能浮動(dòng)、絕對(duì)定位,注意清除inline-block引起的下邊空白)
<style> div{ height:100px; background-color:#099; text-align:center; } div:after{ content:""; display:inline-block; width:0; height:100%; vertical-align:middle; } p{ display:inline-block; margin:0; background-color:#f00; vertical-align:middle; } style> <div><p>居中p>div>
?
用于設(shè)置為塊級(jí)元素的水平垂直居中(IE8及以下不支持)
<style> div{ position:relative; height:100px; background-color:#099; } p{ position:absolute; top:50%; left:50%; margin:0; background-color:#f00; transform:translate(-50%, -50%); } style> <div><p>居中p>div>
?
父容器上設(shè)置display:flex; 用于所有元素的水平垂直居中(IE10及以下不支持,本方法適用于所有元素)
<style> div{ display:flex; height:100px; background-color:#099; justify-content:center; align-items:center; } p{ margin:0; background-color:#f00; } style> <div><p>居中p>div>
?
用于圖片居中,使用透明圖片寬高100%,背景圖片background-position居中,background-image需要?jiǎng)討B(tài)加載最好內(nèi)聯(lián),也可以用span代替img,會(huì)少加載一張透明圖片
以上方法都可以用于圖片居中
<style> p{ height:100px; background-color:#f00; } img{ display:block; width:100%; height:100%; background-repeat:no-repeat; background-position:center; } style> <p><img style="background-image:url(images/1.jpg);" src="images/1.png" alt="居中">p>
?
用于垂直居中,根據(jù)方法1、2、3改
<style> div{ width:100%; height:100px; background-color:#099; text-align:center; writing-mode:vertical-lr; } p{ display:inline; margin:0; background-color:#f00; writing-mode:horizontal-tb; } style> <div><p>居中p>div>
<style> div{ width:100%; height:100px; background-color:#099; writing-mode:vertical-lr; } p{ margin:auto 0; background-color:#f00; writing-mode:horizontal-tb; } style> <div><p>居中p>div>
<style> div{ width:100%; height:100px; background-color:#099; text-align:center; writing-mode:vertical-lr; } p{ display:inline-block; margin:0; background-color:#f00; writing-mode:horizontal-tb; } style> <div><p>居中p>div>
?
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/1479.html
摘要:前言居中是網(wǎng)頁布局中再常見不過的一種方式了,今天我們就來聊聊居中的那點(diǎn)事。我是水平居中的同樣是針對(duì)塊級(jí)元素才有效果。來看代碼我是水平居中的必須配合來使用來可以實(shí)現(xiàn)居中的效果。方法二我是垂直居中的注意此方法要考慮的兼容性問題。 前言:居中是網(wǎng)頁布局中再常見不過的一種方式了,今天我們就來聊聊css居中的那點(diǎn)事。 我們主要從這幾個(gè)方面來了解下居中: 水平居中 垂直居中 水平垂直居中 水平...
摘要:水平居中行內(nèi)元素的水平居中在父元素中設(shè)置只對(duì)內(nèi)聯(lián)元素或行內(nèi)塊元素有效需要放置于父元素中塊級(jí)元素的水平居中只對(duì)塊級(jí)元素有效指的是自適應(yīng)寬度。參考張?chǎng)涡駥?shí)現(xiàn)絕對(duì)定位元素的居中及原理居中方式水平居中垂直居中塊級(jí)元素設(shè)置內(nèi)聯(lián)元素設(shè)置。 原文地址:https://www.xksblog.top/CSS-mainstream-centering-techniques.html 幾個(gè)月也零零散散學(xué)...
摘要:為了更好的加深對(duì)居中的理解,搜集和閱讀相關(guān)資料,發(fā)現(xiàn)不錯(cuò)的文章將其整理出來。 在學(xué)習(xí)前端的過程中,發(fā)現(xiàn)元素和文本的水平居中和垂直居中,是經(jīng)常會(huì)出現(xiàn)的問題,在實(shí)際工作中也會(huì)經(jīng)常碰到。居中的技巧有很多,但在編寫代碼的過程中,發(fā)現(xiàn)有時(shí)候技巧管用,有時(shí)候不管用,于是就將每個(gè)知道的方案都試一遍,找到合適的。這種情況究其原因是對(duì)居中的認(rèn)識(shí)不夠深入,只是停留在實(shí)現(xiàn)需求的水平上。為了更好的加深對(duì)居中的...
摘要:在和下不支持屬性,設(shè)置方法無法解決瀏覽器兼容問題。對(duì)于不支持的和使用特定的。利用技術(shù)區(qū)別對(duì)待和,在不支持的下,通過給父子兩層元素分別設(shè)置和來實(shí)現(xiàn)居中。 css經(jīng)常用來處理居中問題,不同的情況使用不同的方法; 一 :水平居中 (1)文本、圖片等行內(nèi)元素的水平居中 給父元素設(shè)置text-align:center,可以實(shí)現(xiàn)文本、圖片等行內(nèi)元素的水平居中 .wrapper{width...
閱讀 1845·2021-11-23 09:51
閱讀 1303·2021-11-18 10:02
閱讀 974·2021-10-25 09:44
閱讀 2114·2019-08-26 18:36
閱讀 1634·2019-08-26 12:17
閱讀 1158·2019-08-26 11:59
閱讀 2755·2019-08-23 15:56
閱讀 3367·2019-08-23 15:05