摘要:水平居中水平居中可分為行內(nèi)元素水平居中和塊級元素水平居中行內(nèi)元素水平居中這里行內(nèi)元素是指文本圖像按鈕超鏈接等,只需給父元素設(shè)置即可實現(xiàn)。
1、水平居中 水平居中可分為行內(nèi)元素水平居中和塊級元素水平居中 1.1 行內(nèi)元素水平居中
這里行內(nèi)元素是指文本text、圖像img、按鈕超鏈接等,只需給父元素設(shè)置text-align:center即可實現(xiàn)。
.center{ text-align:center; }1.2 塊級元素水平居中水平居中
定寬塊級元素水平居中
只需給需要居中的塊級元素加margin:0 auto即可,但這里需要注意的是,這里塊狀元素的寬度width值一定要有
.center{ width:200px; margin:0 auto; border:1px solid red; }水平居中
不定寬塊級元素水平居中
不定寬,即塊級元素寬度不固定
方法1:設(shè)置table
通過給要居中顯示的元素,設(shè)置display:table,然后設(shè)置margin:0 auto來實現(xiàn)
.center{ display:table; margin:0 auto; border:1px solid red; }水平居中
方法2:設(shè)置inline-block(多個塊狀元素)
子元素設(shè)置inline-block,同時父元素設(shè)置text-align:center
.center{ text-align:center; } .inlineblock-div{ display:inline-block; }12
方法3:設(shè)置flex布局
只需把要處理的塊狀元素的父元素設(shè)置display:flex,justify-content:center;
.center{ display:flex; justify-content:center; }12
方法4:position + 負margin;
方法5:position + margin:auto;
方法6:position + transform;
注:這里方法4、5、6同下面垂直居中一樣的道理,只不過需要把top/bottom改為left/right,在垂直居中部分會詳細講述。
2、垂直居中 2.1 單行文本垂直居中設(shè)置paddingtop=paddingbottom;或
設(shè)置line-height=height;
2.2 多行文本垂直居中通過設(shè)置父元素table,子元素table-cell和vertical-align
vertical-align:middle的意思是把元素放在父元素的中部
方法1:flex布局
在需要垂直居中的父元素上,設(shè)置display:flex和align-items:center
要求:父元素必須顯示設(shè)置height值
顯示效果:
方法2:利用position和top和負margin(需知寬高)
1、設(shè)置元素為absolute/relative/fixed
2、margin=負一半
效果如下:
方法3:利用position和top/bottom和margin:auto(注意不是margin:0 auto)
1、position:absolute/relative/fixed
2、top/bottom:0
3、margin:auto
效果如下:
方法4:利用position和top和transform
transform中translate偏移的百分比就是相對于元素自身的尺寸而言的。
效果如下:
上述的塊級垂直居中方法,稍加改動,即可成為塊級水平居中方法,如top/bottom換成left/right
transform方法,可用于未知元素大小的居中
3、水平垂直居中方法1:絕對定位+margin:auto
div{ width: 200px; height: 200px; background: green; position:absolute; left:0; top: 0; bottom: 0; right: 0; margin: auto; }
方法2:絕對定位+負margin
div{ width:200px; height: 200px; background:green; position: absolute; left:50%; top:50%; margin-left:-100px; margin-top:-100px; }
方法3:絕對定位+transform
div{ width: 200px; height: 200px; background: green; position:absolute; left:50%; /* 定位父級的50% */ top:50%; transform: translate(-50%,-50%); /*自己的50% */ }
方法4:flex布局
.box{ height:600px; display:flex; justify-content:center; //子元素水平居中 align-items:center; //子元素垂直居中 /* aa只要三句話就可以實現(xiàn)不定寬高水平垂直居中。 */ } .box>div{ background: green; width: 200px; height: 200px; }
方法5:table-cell實現(xiàn)居中
設(shè)置
display:table-cell;
text-align:center;
vertical-align: middle;
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/52109.html
摘要:但是部分瀏覽器存在兼容性的問題。核心代碼寬高不固定水平垂直居中演示使用布局垂直水平居中核心代碼使用布局垂直水平居中演示使用布局垂直水平居中核心代碼使用布局垂直水平居中演示 CSS居中完全指南——構(gòu)建CSS居中決策樹 showImg(https://segmentfault.com/img/bV8tDq); 本文總結(jié)CSS居中,包括水平居中和垂直居中.本文相當(dāng)于CSS決策樹,下次再遇到...
摘要:但是部分瀏覽器存在兼容性的問題。核心代碼寬高不固定水平垂直居中演示使用布局垂直水平居中核心代碼使用布局垂直水平居中演示使用布局垂直水平居中核心代碼使用布局垂直水平居中演示 CSS居中完全指南——構(gòu)建CSS居中決策樹 showImg(https://segmentfault.com/img/bV8tDq); 本文總結(jié)CSS居中,包括水平居中和垂直居中.本文相當(dāng)于CSS決策樹,下次再遇到...
摘要:水平居中水平居中可分為行內(nèi)元素水平居中和塊級元素水平居中行內(nèi)元素水平居中這里行內(nèi)元素是指文本圖像按鈕超鏈接等,只需給父元素設(shè)置即可實現(xiàn)。 1、水平居中 水平居中可分為行內(nèi)元素水平居中和塊級元素水平居中 1.1 行內(nèi)元素水平居中 這里行內(nèi)元素是指文本text、圖像img、按鈕超鏈接等,只需給父元素設(shè)置text-align:center即可實現(xiàn)。 .center{ te...
摘要:水平居中內(nèi)聯(lián)元素水平居中利用可以實現(xiàn)在塊級元素內(nèi)部的內(nèi)聯(lián)元素水平居中。此方法對內(nèi)聯(lián)元素內(nèi)聯(lián)塊內(nèi)聯(lián)表元素水平居中都有效。核心代碼演示程序演示代碼垂直居中單行內(nèi)聯(lián)元素垂直居中通過設(shè)置內(nèi)聯(lián)元素的高度和行高相等,從而使元素垂直居中。 簡言 CSS居中是前端工程師經(jīng)常要面對的問題,也是基本技能之一。今天有時間把CSS居中的方案匯編整理了一下,目前包括水平居中,垂直居中及水平垂直居中方案共15種。...
摘要:前言居中是網(wǎng)頁布局中再常見不過的一種方式了,今天我們就來聊聊居中的那點事。我是水平居中的同樣是針對塊級元素才有效果。來看代碼我是水平居中的必須配合來使用來可以實現(xiàn)居中的效果。方法二我是垂直居中的注意此方法要考慮的兼容性問題。 前言:居中是網(wǎng)頁布局中再常見不過的一種方式了,今天我們就來聊聊css居中的那點事。 我們主要從這幾個方面來了解下居中: 水平居中 垂直居中 水平垂直居中 水平...
閱讀 1667·2019-08-30 13:04
閱讀 2218·2019-08-30 12:59
閱讀 1779·2019-08-29 18:34
閱讀 1878·2019-08-29 17:31
閱讀 1269·2019-08-29 15:42
閱讀 3548·2019-08-29 15:37
閱讀 2869·2019-08-29 13:45
閱讀 2785·2019-08-26 13:57