日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

CSS+Jquey實現(xiàn)水平和垂直居中

時間:2016-12-25 15:37:23 類型:HTML/CSS
字號:    

    我們在實際的工作應(yīng)用過程中,經(jīng)常需要將DIV居中顯示,并且是相對于頁面窗口水平和垂直方向的居中顯示,比如像:登入窗口的居中顯示。

    那么是如何實現(xiàn)的呢?接下來南昌雅騰教育提供用CSS和JQuery這兩種方法來實現(xiàn),供大家參考學習。

CSS實現(xiàn)DIV水平居中

PS:本文中所指的DIV包括HTML頁面中所有的元素。
讓一個DIV水平居中,直接用CSS就可以做到。只要設(shè)置了DIV的寬度,然后使用margin設(shè)置邊距0 auto,CSS自動算出左右邊距,使得DIV居中。

.mydiv{   
    margin:0 auto;   
    width:300px;   
    height:200px;   
} 
CSS實現(xiàn)DIV水平和垂直居中

我們?nèi)绻孌IV水平和垂直居中,必須要知道該DIV的寬度和高度,然后設(shè)置位置為絕對位置,距離頁面窗口左邊框和上邊框的距離設(shè)置為50%,這個50%就是指頁面窗口的寬度和高度的50%,最后將該DIV分別左移和上移,左移和上移的大小就是該DIV寬度和高度的一半。

.mydiv{ 
   width:300px;  
   height:200px;  
   position:absolute;  
   left:50%;  
   top:50%;  
   margin:-100px 0 0 -150px 
} 
該方法使用普遍,但前提是必須要設(shè)置DIV的寬度和高度,如果當頁面DIV寬度和高度是動態(tài)的,比如說需要彈出一個DIV層并且要居中顯示,DIV的內(nèi)容是動態(tài)的,所以寬度和高度也是動態(tài)的,這時需要用jQuery來解決居中。

JQuery實現(xiàn)水平和垂直居中

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

$(window).resize(function(){ 
    $(".mydiv").css({ 
        position: "absolute", 
        left: ($(window).width() - $(".mydiv").outerWidth())/2, 
        top: ($(window).height() - $(".mydiv").outerHeight())/2 
    });         }); 
在頁面載入時,就需要調(diào)用resize()。

$(function(){ 
    $(window).resize();  });
該方法的優(yōu)點就在于不需要知道DIV的具體寬度和高度,直接用jQuery就可以實現(xiàn)水平和垂直居中,而且兼容各瀏覽器,這個方法在很多的彈出層效果中應(yīng)用。


更多關(guān)于PHP開發(fā)技術(shù)、WEB前端開發(fā)技術(shù)的交流與學習,請加QQ:1939594233(微信同號