css中常用的幾種居中方法(推薦)

在前端面試中,大都會問你div居中的方法:
文筆不好,就隨便寥寥幾句話概括了,
不過以后文筆肯定會變得更好一些的。
今天我們就細(xì)數(shù)一下幾種方法:
1,使用position:absolute,設(shè)置left、top、margin-left、margin-top的屬性
- .one{
- position:absolute;
- width:200px;
- height:200px;
- top:50%;
- left:50%;
- margin-top:-100px;
- margin-left:-100px;
- background:red;
- }
這種方法基本瀏覽器都能夠兼容,不足之處就是需要固定寬高。
2,使用position:fixed,同樣設(shè)置left、top、margin-left、margin-top的屬性
- .two{
- position:fixed;
- width:180px;
- height:180px;
- top:50%;
- left:50%;
- margin-top:-90px;
- margin-left:-90px;
- background:orange;
- }
大家都知道的position:fixed,IE是不支持這個(gè)屬性的
3,利用position:fixed屬性,margin:auto這個(gè)必須不要忘記了。
- .three{
- position:fixed;
- width:160px;
- height:160px;
- top:0;
- rightright:0;
- bottombottom:0;
- left:0;
- margin:auto;
- background:pink;
- }
4,利用position:absolute屬性,設(shè)置top/bottom/right/left
- .four{
- position:absolute;
- width:140px;
- height:140px;
- top:0;
- rightright:0;
- bottombottom:0;
- left:0;
- margin:auto;
- background:black;
- }
5,利用display:table-cell屬性使內(nèi)容垂直居中
- .five{
- display:table-cell;
- vertical-align:middle;
- text-align:center;
- width:120px;
- height:120px;
- background:purple;
- }
6,最簡單的一種使行內(nèi)元素居中的方法,使用line-height屬性
- .six{
- width:100px;
- height:100px;
- line-height:100px;
- text-align:center;
- background:gray;
- }
這種方法也很實(shí)用,比如使文字垂直居中對齊
7,使用css3的display:-webkit-box屬性,再設(shè)置-webkit-box-pack:center/-webkit-box-align:center
- .seven{
- width:90px;
- height:90px;
- display:-webkit-box;
- -webkit-box-pack:center;
- -webkit-box-align:center;
- background:yellow;
- color:black;
- }
8,使用css3的新屬性transform:translate(x,y)屬性
- .eight{
- position:absolute;
- width:80px;
- height:80px;
- top:50%;
- left:50%;
- transform:translate(-50%,-50%);
- -webkit-transform:translate(-50%,-50%);
- -moz-transform:translate(-50%,-50%);
- -ms-transform:translate(-50%,-50%);
- background:green;
- }
這個(gè)方法可以不需要設(shè)定固定的寬高,在移動端用的會比較多,在移動端css3兼容的比較好
9、最高大上的一種,使用:before元素
- .nine{
- position:fixed;
- display:block;
- top:0;
- rightright:0;
- bottombottom:0;
- left:0;
- text-align:center;
- background:rgba(0,0,0,.5);
- }
- .nine:before{
- content:'';
- display:inline-block;
- vertical-align:middle;
- height:100%;
- }
- .nine .content{
- display:inline-block;
- vertical-align:middle;
- width:60px;
- height:60px;
- line-height:60px;
- color:red;
- background:yellow;
- }
這種方法在我的前面一片文章有詳細(xì)的介紹:彈窗居中的簡單實(shí)現(xiàn)方法
以上這篇css中常用的幾種居中方法(推薦)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
jquery結(jié)合CSS實(shí)現(xiàn)的多樣式多視頻列表連播效果源碼
是一段實(shí)現(xiàn)了右側(cè)縮略圖片+文字列表顯示所有視頻、右側(cè)文字列表顯示所有視頻及底部縮略圖片+文字列表顯示所有視頻三種樣式的視頻連播效果代碼,本段代碼適應(yīng)于所有網(wǎng)頁使用2016-05-25- 下面小編就為大家?guī)硪黄钊肜斫鈉ss中的align-content屬性。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-25
- 下面小編就為大家?guī)硪黄钊肜斫釩SS中的盒子模型。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-25
- 下面小編就為大家?guī)硪黄狢SS3實(shí)用方法總結(jié)(推薦)。小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-24
- 這里為大家送上CSS中的各種選擇器與樣式優(yōu)先級小結(jié),基本上常用的都被整理在其中,歡迎隨看隨記^^2016-05-24
CSS左側(cè)固定寬 右側(cè)自適應(yīng)的實(shí)現(xiàn)代碼(兼容所有瀏覽器)
下面小編就為大家?guī)硪黄狢SS左側(cè)固定寬 右側(cè)自適應(yīng)的實(shí)現(xiàn)代碼(兼容所有瀏覽器)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-05-26