table邊框重疊致使的單元格邊框寬度問題

偶然的看了一眼別人寫的CSS,在註釋中,說有table元素邊框摺疊(塌陷、重疊,那個詞合適?)時,不一樣瀏覽器對單元格邊框的計算是不同的,而後還在註釋中寫了連接地址Border Collapse differences in FF and Webkit;對於死心眼的技術男來講,不探究一番究竟,還真睡不着覺了。css

憤然打開網址(每次都很激憤,常常因爲各類緣由打開的巨慢),理清了思路,原來大致意思是說:雖然他們處理的不同,但最後呈現出來的界面都是同樣的。而後我慢慢的思考下,好像就是 Firefox 把 collapse 按照「塌陷」的意思處理的,webkit 是按照「重疊(或者說摺疊)」的意思處理的。web

如此說來,那個英文標題翻譯起來,還真很差翻譯。該如何翻譯呢,FF 和 webkit 處理邊框重疊時的差異?拜託,webkit 就是按照重疊來呈現的;而若是翻譯成「塌陷」,firefox 就是按照塌陷來呈現的。忽然軟件專利上的一個現象:不保護思想,只保護表達。瀏覽器

頁面的 css 佈局以下:佈局

table {
    table-layout: fixed;
    width: 960px;
    border-collapse: collapse;
    border-spacing: 0;
}
td {
    padding: 2px;
    height: 22px;
    border: 1px solid gray;
}

而後附上簡單的 HTML 測試代碼:測試

<table>
    <tbody>
    <tr>
        <td>I'm td1</td>
        <td id="td2">
            I'm td2
        </td>
    </tr>
    </tbody>
</table>

最後使用 getComputedStyle(td2).borderLeftWidth 計算出來的結果還真是不同,webkit 下面是 1px,firefox 下面是 0px,而 IE 只能使用 td2.curretStyle.borderLeftWidth,結果是和 webkit 一致的。如此看來,應該是 webkit 和 IE 走到是同一條路線,好基友,確定有一腿。spa

瑣碎了這麼多,一張圖,瞬間秒懂。firefox

td

--------------------------------------------翻譯

無聊的時候,就用代碼慰藉一下;code

相關文章
相關標籤/搜索