網(wǎng)頁設(shè)計(jì)中的固定布局

網(wǎng)頁設(shè)計(jì)中,固定布局模型的速度之所以快,主要原因是布局不依賴于表單元格的內(nèi)容。其布局是根據(jù)該表以及表中列和單元格的width值決定的。

網(wǎng)頁設(shè)計(jì)時(shí)固定布局模型的工作包括以下簡單步驟:

1、width屬性值不是auto的所有列元素會根據(jù)width值設(shè)置該列的寬度。

2、如果一個列的寬度為auto——不過,表首行中位于該列的單元格width不是auto——則根據(jù)該單元格寬度設(shè)置此列的寬度。如果這個單元格跨多列,則寬度在這些列上平均分配。

3、在以上兩步之后,如果列的寬度仍為auto,會自動確定其大小,使其寬度盡可能相等。

此時(shí),表的寬度設(shè)置為表的width值或列寬度之和(取其中較大者)。如果表寬度大于其列寬總和,將二者之差除以列數(shù),再把得到的這個寬度增加到每一列上。

網(wǎng)頁設(shè)計(jì)時(shí),這種方法的速度很快,因?yàn)樗辛袑挾榷加杀淼牡谝恍卸x。首行后所有行中的單元格都根據(jù)首行所定義的列寬確定大小。后面這些行中的單元格不會改變列寬,這意味著為這些單元格指定的width值都會被忽略。如果一個單元格的內(nèi)容無法放下,該單元格的overflow值將決定單元格內(nèi)容是剪裁。可見還是生成一個滾動條。

考慮以下樣式和標(biāo)記:

table{table-layout: fixed; width: 400px;

border-collapse: collapse;}

td {border: 1px solid;}

Col#c1 {width: 200px;}

#r1c2 {width: 75px;}

#r2c3 {width: 500px;}

<table>

<colgroup>

<col id="cl"><col id="c2"><col id="c3"><col id="c4">

</colgroup>

<tr>

<td id="rlcl">l-l</td><td id="r1c2">l-2</td>

<td id="rlc3">l-3</td><td id="rlc4">1-4</td>

</tr>

<tr>

<td id="r2cl">2-l</td><td id="r2c2">2-2</td>

<td id="r2c3">2-3</td><cd id="r2c4">2-4</td>

</tr>

<tr>

<td id=" r3c1">3-1</td><td id=" r3 e2">3-2</td>

<Cd id="r3c3">3-3</td><td id="r3c4">3-4</td>

</tr>

<tr>

<td id="r4cl">4-l</tdxtd id="r4c2">4-2</td>

<td id="r4c3">4-3</tdxtd id="r4c4">4-4</td>

</tr>

</table>

注意,在網(wǎng)頁設(shè)計(jì)時(shí),使用固定寬度布局模型時(shí),沒有必要非得為表指定一個顯式寬度,不過如果指定一個寬度確實(shí)有所幫助。例如,給定以下樣式,用戶代理可能計(jì)算出表的寬度比父元素的width窄50像素。它就會在固定布局算法中使用計(jì)算得到的這個寬度:

table{table-layput: fixed; margin: 0 25px;width: auto;}


網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷咨詢專線:0871-63535511(點(diǎn)擊可一鍵撥號)