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