首頁  >  文章  >  web前端  >  css裡面怎麼讓body內容居中

css裡面怎麼讓body內容居中

藏色散人
藏色散人原創
2021-01-25 09:10:2116812瀏覽

css裡面讓body內容居中的方法:1、使用margin設定邊距「0 auto」讓HTML頁面中所有的元素水平居中;2、將div距離頁面視窗左邊框和上邊框的距離設定為「50%」;3、透過jQuery實現水平和垂直居中。

css裡面怎麼讓body內容居中

本教學操作環境:Windows7系統、HTML5&&CSS3版,DELL G3電腦。

推薦:css影片教學

我們在設計頁面的時候,經常要把DIV居中顯示,而且是相對頁面視窗水平和垂直方向居中顯示,如讓登入視窗居中顯示。我們傳統解決的方法是用純CSS來讓DIV居中。在本文中,我將告訴大家如何用CSS和jQuery兩種方法讓DIV水平和垂直居中。

CSS讓DIV水平居中

說明,本文所指的DIV包含HTML頁面中所有的元素。

讓一個DIV水準居中,直接用CSS就可以做到。只要設定了DIV的寬度,然後使用margin設定邊距0 auto,CSS自動算出左右邊距,使得DIV居中。

.mydiv{   
    margin:0 auto;   
    width:300px;   
    height:200px;   
}

但是如果要讓DIV垂直方向也居中,恐怕CSS需要修改了

CSS實現水平和垂直居中

要讓DIV水平和垂直居中,必需知道該DIV得寬度和高度,然後設定位置為絕對位置,距離頁面視窗左邊框和上邊框的距離設定為50%,這個50%就是指頁面視窗的寬度和高度的50%,最後將此DIV分別左移和上移,左移和上移的大小就是該DIV寬度和高度的一半。

.mydiv{ 
   width:300px;  
   height:200px;  
   position:absolute;  
   left:50%;  
   top:50%;  
   margin:-100px 0 0 -150px 
}

此方法使用普遍,但是前提是必需設定DIV的寬度和高度。如果當頁面DIV寬度和高度是動態的,比方說需要彈出一個DIV層並且要居中顯示,DIV的內容是動態的,所以寬度和高度也是動態的,這時需要用jQuery可以解決居中。

jQuery實現水平和垂直居中

jQuery實現水平和垂直居中的原理就是透過jQuery設定DIV的CSS,取得DIV的左、上的邊距偏移量,邊距偏移量的演算法就是用頁面視窗的寬度減去該DIV得寬度,得到的值再除以2即左偏移量,右偏移量演算法相同。注意DIV的CSS設定要在resize()方法中完成,就是每次改變視窗大小時,都要執行設定DIV的CSS,程式碼如下:

$(window).resize(function(){ 
    $(".mydiv").css({ 
        position: "absolute", 
        left: ($(window).width() - $(".mydiv").outerWidth())/2, 
        top: ($(window).height() - $(".mydiv").outerHeight())/2 
    });        
});

此外在頁面載入時,就需要呼叫resize()。

$(function(){ 
    $(window).resize(); 
});

此方法的好處就是不需要知道DIV的具體寬度和高度大小,直接用jQuery就可以實現水平和垂直居中,而且兼容各瀏覽器,這個方法在很多的彈出層效果中應用。

ps:如果該div的寬度大於頁面的寬度,那麼需要在body上新增一個css

<style type="TEXT/CSS">
body{width:100%; overflow:hidden}
</style>

以上是css裡面怎麼讓body內容居中的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn