使用絕對定位+負(fù)外邊距讓DIV層水平垂直居中頁面
發(fā)布時(shí)間:2013-11-13 15:31:26 作者:佚名
我要評論
在html中水平居中使用margin:0px auto;可以實(shí)現(xiàn),但垂直居中使用外邊距是無法達(dá)到效果的,這里使用絕對定位+負(fù)外邊距的方式來實(shí)現(xiàn)垂直居中,需要的朋友可以參考下
讓一個(gè)層水平垂直居中是一個(gè)非常常見的布局方式,但在html中水平居中使用margin:0px auto;可以實(shí)現(xiàn),但垂直居中使用外邊距是無法達(dá)到效果的。(頁面設(shè)置height:100%;是無效的),這里使用絕對定位+負(fù)外邊距的方式來實(shí)現(xiàn)垂直居中,但同時(shí)要考慮頁面重置大小的情況,需要使用js來修正。
1、讓層水平居中
.className{
width:270px;
height:150px;
margin:0 auto;
}
使用margin:0 auto;讓層水平居中,留意寬度和高度必不可少。
2、讓層垂直居中
.className{
width:270px;
height:150px;
position:absolute;
left:50%;
top:50%;
margin:-75px 0 0 -135px;
}
將層設(shè)置為絕對定位,left和top為50%,這時(shí)候使用負(fù)外邊距,負(fù)外邊距的大小為寬高的一半。
3、在重置窗體的時(shí)候?qū)右琅f保持居中
$(document).ready(function(){
$(window).resize(function(){
$('.className').css({
position:'absolute',
left: ($(window).width()
- $('.className').outerWidth())/2,
top: ($(window).height()
- $('.className').outerHeight())/2
});
});
$(window).resize();
});
這里用到的jquery的方法。
resize()事件:當(dāng)在窗體重置大小時(shí)觸發(fā)。
outerWidth():獲取第一個(gè)匹配元素外部寬度(默認(rèn)包括補(bǔ)白和邊框)。
1、讓層水平居中
復(fù)制代碼
代碼如下:.className{
width:270px;
height:150px;
margin:0 auto;
}
使用margin:0 auto;讓層水平居中,留意寬度和高度必不可少。
2、讓層垂直居中
復(fù)制代碼
代碼如下:.className{
width:270px;
height:150px;
position:absolute;
left:50%;
top:50%;
margin:-75px 0 0 -135px;
}
將層設(shè)置為絕對定位,left和top為50%,這時(shí)候使用負(fù)外邊距,負(fù)外邊距的大小為寬高的一半。
3、在重置窗體的時(shí)候?qū)右琅f保持居中
復(fù)制代碼
代碼如下:$(document).ready(function(){
$(window).resize(function(){
$('.className').css({
position:'absolute',
left: ($(window).width()
- $('.className').outerWidth())/2,
top: ($(window).height()
- $('.className').outerHeight())/2
});
});
$(window).resize();
});
這里用到的jquery的方法。
resize()事件:當(dāng)在窗體重置大小時(shí)觸發(fā)。
outerWidth():獲取第一個(gè)匹配元素外部寬度(默認(rèn)包括補(bǔ)白和邊框)。
相關(guān)文章
- 這篇文章主要介紹了DIV或者DIV里面的圖片水平與垂直居中的方法,需要的朋友可以參考下2018-11-15
- 下面小編就為大家?guī)硪黄孌IV水平垂直居中的兩種完美方法推薦。一起跟隨小編過來看看吧。希望給大家一個(gè)參考2016-03-15
- 在某些時(shí)候可能需要將一個(gè)絕對定位的div在它的父對象中垂直居中對齊,可能用到的頻率不是太高,但是偶爾也會(huì)用到,下面就簡單介紹一下如何實(shí)現(xiàn)此功能2014-01-27
- 純css完美地解決圖片以及div垂直水平居中,兼容IE7.0、IE6.0、IE5.5、IE5.0、FF、Opera、Safari具體實(shí)現(xiàn)css 如下,感興趣的朋友可以參考下哈2013-06-04
- DIV水平垂直居中css實(shí)現(xiàn)代碼,需要的朋友可以參考下2012-05-27
- 很多情況需要用到div的居中,下面是腳本之家編輯參考一些網(wǎng)站整理的一篇文章。希望對朋友們有所幫助。2010-07-08
css3 flex實(shí)現(xiàn)div內(nèi)容水平垂直居中的幾種方法
這篇文章主要介紹了css3 flex實(shí)現(xiàn)div內(nèi)容水平垂直居中的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小2020-03-27

