<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-42  評論-578  文章-1  trackbacks-0

    對比于傳統(tǒng)的表格布局和框架布局,DIV+CSS布局有著布局容易、改版方便、樣式定義靈活、HTML代碼簡潔清晰、易于JavaScript操控等優(yōu)點。在眾口皆碑的同時,對于一些初學(xué)者,總會遇到各種各樣的問題,比如說DIV的寬度或高度的計算問題。

    我們來探討一下影響DIV寬度或高度的屬性有哪些?

    DIV的寬度 = width + padding + border + margin

    僅從一條公式上看,可能有點難理解,我們通過測試代碼和截圖來觀察一下。為了測試結(jié)果觀察直觀,我們只測試一邊,即左邊,即本來padding、border、margin的寬度計算,都是左右兩邊都算在內(nèi)的,這里就只測試左邊,右邊同理。

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
        
    <head>
            
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
            
    <title>測試DIV的寬度</title>
            
    <style type="text/css">
                #container 
    {
                    
    /* 左參考線 */
                    border-left
    :1px solid #B23AEE;
                
    }
                
    /* 定義各個層的公共屬性 */
                #div1,#div2,#div3,#div4
    {
                    width
    :200px;
                    height
    :50px;
                    background
    :#FFE1FF;
                    margin-bottom
    :5px;
                
    }
                
    /* 只有width */
                #div1
    {
                
    }
                
    /* 加上border */
                #div2
    {
                    border-left
    :10px solid red;
                
    }
                
    /* 加上border和padding */
                #div3
    {
                    border-left
    :10px solid red;
                    padding-left
    :50px;
                
    }
                
    /* 加上border、padding和margin */
                #div4
    {
                    border-left
    :10px solid red;
                    padding-left
    :50px;
                    margin-left
    :50px;
                
    }
            
    </style>
        
    </head>
        
    <body>
            
    <div id="container">
                
    <div id="div1">
                    心夢帆影心夢帆影心夢帆影心夢帆影心夢帆影
                
    </div>
                
    <div id="div2">
                    心夢帆影心夢帆影心夢帆影心夢帆影心夢帆影
                
    </div>
                
    <div id="div3">
                    心夢帆影心夢帆影心夢帆影心夢帆影心夢帆影
                
    </div>
                
    <div id="div4">
                    心夢帆影心夢帆影心夢帆影心夢帆影心夢帆影
                
    </div>
            
    </div>
        
    </body>
    </html>

    我們在Firefox中測試,截圖如下:

    image

    我們來分析一下DIV4,如下圖:

    image

    對照上面的代碼和截圖,我們可以清楚地理解“div的寬度 = width + padding + border + margin”這條公式。

    對于Web前端開發(fā)者來說,最頭痛的事情就是因瀏覽器的差異而引起的網(wǎng)頁顯示效果的差異,而對于這條寬度計算公式,在其他瀏覽器中會不會有不兼容的問題呢?

    幸好,大部分常用的瀏覽器,我機(jī)器上都安裝了,測試結(jié)果是:在Firefox、Opera、Google、IE8、IE7顯示都跟上面的截圖一樣,也就是說,在這些瀏覽器中,寬度的計算公式是:

    DIV的寬度 = width + padding + border + margin

     

    而在IE6中測試,結(jié)果卻不是這樣,請看運(yùn)行截圖:

    image

    由上圖可以看出,在IE6的寬度計算是:

    DIV的寬度 = width + margin

    而border和padding,是占用了width的位置。這一點,在前端開發(fā)中要注意。



    本文原創(chuàng),轉(zhuǎn)載請注明出處,謝謝!http://www.tkk7.com/rongxh7(心夢帆影JavaEE技術(shù)博客)
        

    posted on 2009-12-14 00:39 心夢帆影 閱讀(3803) 評論(1)  編輯  收藏 所屬分類: Web前端開發(fā)

    評論:
    # re: Div+CSS布局的寬度計算及在各瀏覽器中的差異比較 2012-10-12 18:38 | 快樂嘟嘟
    這個原因是IE瀏覽器的怪異模式導(dǎo)致的 如果不加<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">這句,IE8也會和ie6一樣觸發(fā)怪異模式  回復(fù)  更多評論
      

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 国产国拍精品亚洲AV片| 亚洲人成网站999久久久综合| 91成人在线免费观看| 亚洲国产精品免费观看| 久久亚洲AV无码西西人体| 成人影片一区免费观看| 亚洲一区二区无码偷拍| 亚洲精品国产品国语在线| 在线观看免费毛片| 13小箩利洗澡无码视频网站免费| 亚洲最大av资源站无码av网址| 国产亚洲美日韩AV中文字幕无码成人| 999国内精品永久免费视频| 国产精品免费观看视频| 亚洲AV成人一区二区三区在线看| 国产国拍精品亚洲AV片| 精品久久洲久久久久护士免费| 午夜不卡久久精品无码免费 | 特级毛片A级毛片免费播放| 亚洲国产精品自在线一区二区| 国产视频精品免费| 亚洲免费在线观看视频| a级毛片免费观看网站| 亚洲AV男人的天堂在线观看| 久久噜噜噜久久亚洲va久| 无码国产亚洲日韩国精品视频一区二区三区| 久久这里只精品热免费99| 香蕉视频免费在线播放| 一本天堂ⅴ无码亚洲道久久| 亚洲精品国产成人片| 免费A级毛片在线播放不收费| 国产卡一卡二卡三免费入口 | 国产在线观看麻豆91精品免费| 国产99久久久久久免费看| 亚洲av无码专区在线观看亚| 亚洲妓女综合网99| 久久亚洲AV成人出白浆无码国产| 伊人久久精品亚洲午夜| 亚洲人成无码网站久久99热国产| 白白国产永久免费视频| 思思99re66在线精品免费观看|