Sākumlapa
"Pirmā web lapa"
CSS
Citi materiāli
Ceļošana - kalni
HTML
Sintakse
Pamatelementi
Virsraksti, rindkopas
Saraksti
Saites
Attēli
Tabulas
Noformējums
Meta
HTML ...
Doctype
Rakstāmzīmju kodējums
Entītijas
Valodas norādīšana
Teksta virziens
Vēl iesaku:
HTML tabulas ir domātas datu (teksta, attēlu, saišu u.c.) sakārtošanai rindās un kolonnās. Tomēr tās nav paredzētas web lapas struktūras (layout) veidošanai, kā tas dažkārt novērojams praksē, jo tabulas visi interneta pārlūki (IE, FF u.c.) attēlo vienādi un struktūras veidošana ar to palīdzību ir ļoti vienkārša. Iemesli, kamdēļ tās neiesaka lietot (tajā skaitā W3C) lapas struktūras veidošanā ir:
Lapas struktūras veidošanai būtu jāizmanto CSS un, piemēram, DIV elementi.
Tabulas pamatelementi ir (lietošu tos, jau iekļautus tagos. Pie tam ir svarīga to lietošanas kārtība!):
Tātad tabulā var būt vairākas rindas, bet katrā rindā vairākas šūnas, kurās varam rakstīt tekstu, ievietot attēlus utt.
HTML kods (pielietošu arī īpašību border - skatīt zemāk):
<table border="1px">
<tr>
<th> </th>
<th><p>1.kolonnas virsraksts</p></th>
<th><p>2.kolonnas virsraksts</p></th>
</tr>
<tr>
<th><p>virsraksts1</p></th>
<td><p>1.rinda 1.kolonna</p></td>
<td><p>1.rinda 2.kolonna</p></td>
</tr>
<tr>
<th><p>virsraksts2</p></th>
<td><p>2.rinda 1.kolonna</p></td>
<td><p>2.rinda 2.kolonna</p></td>
</tr>
</table>
Rezultāts:
1.kolonnas virsraksts |
2.kolonnas virsraksts |
|
|---|---|---|
virsraksts1 |
1.rinda 1.kolonna |
1.rinda 2.kolonna |
virsraksts2 |
2.rinda 1.kolonna |
2.rinda 2.kolonna |
P.S. Tabulas šūnās tekstu var rakstīt arī pa tiešo, t.i., to neiekļaujot rindkopas elementos!
NB! Jāsaprot, ka pat nenorādot span īpašību, tās noklusētā vērtība elementiem <colgroup> un <col> tomēr ir "1". Ja <colgroup> satur kaut vienu <col> elementu, tad <colgroup> kolonnu skaits tiek rēķināts no <col> elementa span vērtībām. Svarīgi, lai reālais kolonnu skaits sakrīt ar visu span vērtību kopsummu!
NB! Kolonnu platumu var noteikt kā fiksētu (pikseļos, piem., width="20"), procentuāli (width="20%") vai proporcionāli no tabulai nepieciešamā platuma (width="2*". Tiek lietots skaitlis ar zvaigznīti. Savukārt "0*" katrai kolonnai piemēros minimālo platumu šūnu satura attēlošanai).
Ja kolonnu (-as) platumi tiek norādīti relatīvi (procentos), tad ir jānorāda arī visas tabulas platums!
HTML kods:
<table border="1px" width="550"
summary="Tabulā sniegts smalks dažādu, pavisam deviņu, SIA sabiedrību nomaksātā PVN aplūkojums, kā arī kopsummas.">
<caption>SIA nomaksātā PVN aplūkojums</caption>
<colgroup width="200"></colgroup>
<colgroup>
<col span="3" width="0*">
<col width="1*">
<col width="2*"></colgroup>
<thead>
<tr><th>Mēnesis</th>
<th>SIA "A"</th><th>SIA "B"</th><th>SIA "C"</th>
<th>SIA "D"</th><th>Summa</th></tr></thead>
<tfoot>
<tr><th>Kopā</th>
<td>380</td><td>660</td><td>543</td>
<td>502</td><td>3059</td></tr></tfoot>
<tbody>
<tr><th>Jan</th>
<td>180</td><td>320</td><td>321</td>
<td>222</td><td>1475</td></tr>
<tr><th>Feb</th>
<td>200</td><td>340</td><td>222</td>
<td>280</td><td>1584</td></tr></tbody>
</table>
Rezultāts:
Mēnesis |
SIA "A" | SIA "B" | SIA "C" |
SIA "D" | Summa |
|---|---|---|---|---|---|
Kopā |
380 | 660 | 543 |
502 | 3059 |
Jan |
180 | 320 | 321 |
222 | 1475 |
Feb |
200 | 340 | 222 |
280 | 1584 |
Piemēra tabulā platumam vajadzētu būt noteiktam sekojoši: vispirms tiek rezervēts 200 pikseļu platums pirmajai kolonnai, tad otrajai līdz ceturtai kolonnai rezervē minimālo platumu satura attēlošanai, visbeidzot atlikušo platumu sadala trīs vienādās daļās, no kurām vienu daļu piešķir piektajai kolonnai, bet divas daļas sestajai. Diemžēl prakse rāda, ka pārlūkprogrammas neatbalsta proporcionālās vērtības kolonnu platumiem (ja kļūdos, lūdzu, dodiet ziņu!)!
Šūnu apvienošanu var veikt ar sekojošu īpašību palīdzību (pievienojamas šūnu elementiem <th> vai <td>, to noklusētā vērtība ir "1"):
NB! Apvienotās šūnas nedrīkst pārklāties, piemēram, ja vienlaicīgi tiek apvienotas šūnas pa rindām un kolonnām! Un vēl - neesmu drošs par pārlūku atbalstu vērtībai "0" :(
HTML kods:
<table border="1">
<tr>
<th colspan="3">Virsraksts</th>
</tr>
<tr>
<td>2.rinda 1.kolonna</td>
<td rowspan="2">2.rinda 2.kolonna</td>
<td>2.rinda 3.kolonna</td>
</tr>
<tr>
<td>3.rinda 1.kolonna</td>
<td>3.rinda 3.kolonna</td>
</tr>
</table>
Rezultāts:
Virsraksts |
||
|---|---|---|
2.rinda 1.kolonna |
2.rinda 2.kolonna |
2.rinda 3.kolonna |
3.rinda 1.kolonna |
3.rinda 3.kolonna |
|
NB! Ja jau border un frame attiecas tikai uz tabulas ārējo rāmi, tad kāpēc līnijas parādās visām tabulas šūnām?
Iemesls tam ir priekšraksts par atsevišķu īpašību savstarpējo sakarību:
HTML kods:
<table width="550" border="1" frame="hsides" rules="groups" cellpadding="10">
<colgroup width="20%"></colgroup>
<colgroup>
<col span="4" width="15%">
<col width="20%"></colgroup>
<thead>
<tr><th>Mēnesis</th>
<th>SIA "A"</th><th>SIA "B"</th><th>SIA "C"</th>
<th>SIA "D"</th><th>Summa</th></tr></thead>
<tfoot>
<tr><th>Kopā</th>
<td>380</td><td>660</td><td>543</td>
<td>502</td><td>3059</td></tr></tfoot>
<tbody>
<tr><th>Jan</th>
<td>180</td><td>320</td><td>321</td>
<td>222</td><td>1475</td></tr>
<tr><th>Feb</th>
<td>200</td><td>340</td><td>222</td>
<td>280</td><td>1584</td></tr></tbody>
</table>
Rezultāts:
Mēnesis |
SIA "A" | SIA "B" | SIA "C" |
SIA "D" | Summa |
|---|---|---|---|---|---|
Kopā |
380 | 660 | 543 |
502 | 3059 |
Jan |
180 | 320 | 321 |
222 | 1475 |
Feb |
200 | 340 | 222 |
280 | 1584 |
Tātad tabulai līniju biezums ir 1px, tiek attēlota ārējā augšējā un apakšējā līnija, kā arī ar līnijām nodalītas grupas tabulas iekšienē (nevis ārpusē). Tāpat attālums no šūnas satura līdz līnijai ir 10px.
Autortiesības © 2005-2009, kasis.lv. Visas tiesības aizsargātas.