Calculul latimii coloanelor dintr-un tabel
Latimea unei coloane poate fi specificata īn trei moduri:
Fix
Specificarea unei latimi fixe este data īn pixeli (ex. width="30"). Aceasta metoda permite afisarea tabelelor īn mod incremental (pe masura ce se īncarca rīndurile tabelului).
Procent
Specificarea unei latimi ca procent (ex. width=" ") este data īn functie de latimea disponibila pentru īntreg tabelul. Aceasta nu depinde de tabelulul īnsusi, si astfel aceasta metoda permite si ea afisarea tabelelor incremental.
Proportional
Specificarea unei latimi īn mod proportional (ex. width="3*") se refera la portiunile de spatiu orizontal solicitate de tabel. Daca latimea tabelului este data ca o valoare fixa, prin intermediul atributului width al elementului TABLE, atunci si aceasta metoda permite afisarea tabelelor incremental.
Daca, īnsa, tabelul nu are o latime fixa, browserele trebuie sa astepte īncarcarea integrala a tabelului īnainte de a determina latimea orizontala ceruta de tabel. Numai atunci se poate determina si latimea coloanelor.
Daca nu se specifica nici o informatie despre latimea unei coloane, browserele nu vor capabile sa formateze tabelul incremental, īntrucīt trebuie sa astepte īntregul continut al coloanei pentru a determina latimea acesteia.
Daca latimea coloanei se dovedeste prea mica pentru continutul acesteia, browserele pot alege sa reformateze tabelul.
Exemplu:
Tabelul urmator are 6 coloane. Prima nu apartine explicit nici unui grup. Urmatoarele trei apartin explicit primului grup si ultimele doua apartin celui de al doilea grup explicit. Acest tabel nu poate fi afisat incremental īntrucīt contine coloane cu latimi specificate proportional si atributul width al lui TABLE nu are specificat nici o valoare.
<TABLE>
<COLGROUP>
<
<COLGROUP>
<
<
<
<COLGROUP align="center">
<
<
<THEAD>
<TR><TD> ...
...rīndurile tabelului...
</TABLE>
Īn momentul īn care browserul receptioneaza toate datele din tabel, spetiul orizontal disponibil va fi alocat coloanelor dupa cum urmeaza:
Se aloca 30 de pixeli coloanelor unu si doi.
Se rezerva spatiul minimal pentru coloana trei.
Spatiul orizontal ramas disponibil este īmpatit īn 6 parti egale (īntrucīt 2* + 1* + 3* = 6 parti egale).
Coloana a patra (2*) va primi 2 parti, coloana a cincea (1*) o parte si coloana a sasea (3*) va primi 3 parti.
Valoarea atributului align
din coloana a treia este "center". Toate celule din fiecare coloana din acest grup vor
mosteni aceasta valoare, dar o pot suprapune. De fapt,
Exemplu:
Tabelul urmator, asa cum are descrisa latimea, permite formatarea (si implicit si afisarea) incremental:
<TABLE width="200">
<COLGROUP span="10" width="15">
<COLGROUP width="*">
<
<
<THEAD>
<TR><TD> ...
...rīndurile tabelului...
</TABLE>
Primele 10 coloane au fiecare cīte 15
pixeli latime. Ultimele doua coloane vor primi fiecare
jumatate din cei 50 de pixeli care mai ramīn.
|