Kiel fari TTT-paghojn

Tabeloj

En tiu chi leciono vi lernos, kiel oni faras tabelojn en XHTML. La tabelaj elementoj de XHTML estas por prezentado de tabelecaj datumoj. Tio estas datumoj, kiuj havas diversajn logikajn interrilatojn prezenteblajn per aranghado lau kolumnoj kaj vicoj. Tiaj datumoj estas ekz. statistiko, adresaroj k.s.

Bedaurinde XHTML-aj tabeloj estas tre ofte misuzataj por krei grafikajn aranghojn de paghoj. Ne imitu tion! Uzu por grafika aranghado nur stilfoliojn.

Ne chiuj ebloj kaj komplikajhoj de tabeloj estos chi tie klarigitaj.

Noto: Pluraj el la ekzemploj en tiu chi leciono estas pruntitaj de TTT-pagho verkita de Jukka KORPELA. Mi tamen reverkis la ekzemplojn lau XHTML 1.0 (anstatau HTML 3.2), kaj tradukis ilin en Esperanton. La paghoj de Jukka pri TTT-verkado (en la Angla kaj en la Finna) estas cetere tre legindaj.

Baza tabelo

Jen la bazaj tabelelementoj:

  • table = tabelo
  • caption = tabeltitolo
  • tbody = tabelkorpo
  • tr = tabelvico
  • th = titola tabelchelo
  • td = datuma tabelchelo

Jen ekstreme simpla tabelkodo:

<table>
  <tbody>
    <tr><td>A</td><td>B</td></tr>
    <tr><td>C</td><td>CH</td></tr>
  </tbody>
</table>

Kaj jen kiel prezentighas tiu kodo en via TTT-legilo:

AB
CCH

Per tr-elementoj oni do kreas vicojn, kaj ene de tiuj vicoj estas tabelcheloj: td-elementoj. La unua chelo de la unua vico, kaj la unua chelo de la dua vico, kune formas kolumnon (A kaj C). Same la dua chelo de la unua vico, kaj la dua chelo de la dua vico, formas alian kolumnon (B kaj CH).

Jen pli komplika kaj pli realisma tabelo, kiu uzas iom pli da elementoj:

Kelkaj landoj
LandoChefurboLingvo
SvedujoStokholmola Sveda
GermanujoBerlinola Germana
AlgherioAlgherola Araba
MeksikoMeksikurbola Hispana

En tiu tabelo estas la jenaj partoj:

  • tabeltitolo: “Kelkaj landoj”
  • tri kolumnoj
  • kvin vicoj
  • tri titolaj tabelcheloj, po unu en chiu kolumno
  • dek du datumaj tabelcheloj, po tri en chiu vico; po kvar en chiu kolumno

Jen la XHTML-kodo por konstrui tiun tabelon:

<table border="1">
  <caption>Kelkaj landoj</caption>
  <tbody>
    <tr>
      <th>Lando</th><th>Chefurbo</th><th>Lingvo</th>
    </tr>
    <tr>
      <td>Svedujo</td><td>Stokholmo</td><td>la Sveda</td>
    </tr>
    <tr>
      <td>Germanujo</td><td>Berlino</td><td>la Germana</td>
    </tr>
    <tr>
      <td>Algherio</td><td>Alghero</td><td>la Araba</td>
    </tr>
    <tr>
      <td>Meksiko</td><td>Meksikurbo</td><td>la Hispana</td>
    </tr>
  </tbody>
</table>

La tuta tabelo konsistas el unu table-elemento. Ene de ghi estas unue caption-elemento, kaj poste tbody-elemento. En la tbody estas kvin tr-elementoj (po unu por chiu vico de la tabelo). Kaj ene de chiu tr-elemento estas elementoj por tabelcheloj: th-elementoj por titolaj cheloj, kaj td-elementoj por datumaj cheloj.

caption

La elemento caption estas praktike malmulte uzata, sed ghi estas tre utila. Oni rajtas meti caption nur tuj post la malferma table-marko, kaj povas esti nur po unu caption en chiu tabelo.

Noto: Devus esti eble per stilfolio proponi diversajn prezentomanierojn por caption. Ekzemple caption {caption-side:bottom;} devus kauzi, ke la tabeltitolo aperas sub la tabelo. Sed bedaurinde nur malmultaj TTT-legiloj ghuste traktas tion.

tbody

tbody ne estas deviga elemento. Se oni ghin ne uzas, ghi automate subkomprenighas. Tamen montrighis, ke iuj novaj TTT-legiloj, en iuj specialaj cirkonstancoj havas problemojn pri tabeloj, en kiujn oni ne enmetis efektivajn markojn por tbody. Tial mi konsilas chiam uzi tbody, ankau kiam tio eble shajnas superflua balasto.

Noto: Krom tbody por tabelkorpo, ekzistas ankau thead por tabelkapo, kaj tfoot por tabelpiedo. Pere de tiuj elementoj oni povas teorie krei tabelojn, en kiuj kapa kaj pieda partoj chiam videblas. Tiaj aranghoj povas esti tre oportunaj, precipe por presado de tabeloj surpapere, kiam oni volas ripeti ekzemple titolajn tabelchelojn sur chiu pagho. Sed chio tia bedaurinde ankorau apenau funkcias en iuj TTT-legiloj. Tial mi ne traktos thead kaj tfoot en tiu chi leciono.

Tabelaj atributoj

En la dua ekzemplo estas ankau unu atributo: border="1". Tiu atributo indikas, ke estu bordero chirkau chiu tabelchelo, kaj ke tiu bordero estu largha je unu bildero. Iom escepte oni povas indiki tian prezentan detalon rekte en la XHTML-kodo. Oni povas tion fari ankau per stilfolio, sed kiam temas pri tabeloj, povas esti tre grave, ke bordero estu montrata ankau kiam la stilfolio forestas (au kiam la TTT-legilo ignoras la stilfolion). Alie iuj tabeloj povas farighi nekompreneblaj. Sen la bordero oni eble ne povas bone kompreni la strukturon de kolumnoj kaj vicoj. Ghuste tiu strukturo ja estas la tuta senco de tabelo. Tial estas bone, je bezono, indiki borderon jam en la XHTML-kodo.

Se oni nepre ne volas borderon, oni povas skribi border="0", sed normale sufichas skribi nenion ajn, char plej multaj TTT-legiloj montras tian borderon nur se oni tion aparte indikas. Chiuokaze oni ne povas esti certa, kiel prezentighas tabelo. Eble iuj legantoj havas propran stilfolion, kiu enshaltas au elshaltas borderojn diversgrandajn kaj diverskolorajn.

Ekzistas ankau cellspacing-atributo por indiki spacon chirkau la tabelcheloj, ekz. cellspacing="2" (= estu spaco largha je 2 bilderoj chiuflanke de chiu tabelchelo). Kaj ekzistas cellpadding-atributo por indiki spacon (remburon) ene de la tabelcheloj, inter la teksto kaj la bordero, ekz. cellpadding="4" (= estu remburo largha je 4 bilderoj chiuflanke de la enhavo de tabelchelo). Ankau tiuj atributoj povas esti utilaj por igi tabelon komprenebla. Sed normale sufichas uzi border en la XHTML-kodo, dum oni faras aliajn prezentajn aferojn en stilfolio.

Se vi volas, vi povas preni la kodon de la ekzempla tabelo, kaj aldoni al ghi krom border ankau cellspacing kaj cellpadding, eksperimentante per diversaj larghoj por vidi, kiel tio influas la prezentadon. Chiuj tri atributoj estu en la malferma marko de la table-elemento. Sciu, ke per stilfolio eblas fari multe pli interesajn aferojn.

Oni ankau povas uzi width-atributon en la table-elemento. Tia atributo indikas la larghon de tabelo, au en bilderoj, ekz. width="400", au per procentajho, ekz. width="80%" (= okdek procentoj de la largho de la havebla spaco). Sed preskau chiam estas preferinde ne uzi width-atributon, kaj precipe grave estas ne indiki la larghon de tabelo per bilderoj, char tio povas krei tro rigidan prezenton, kiu ne adaptighas al diversaj fenestrograndecoj kaj diversaj tekstograndecoj.

Pli komplikaj tabeloj

Malplenaj cheloj

Ofte en tabeloj iuj cheloj estas malplenaj, char mankas informo por la koncerna afero. Oni ne rajtas tiam forlasi la tutan tabelchelon. La kodo por tiu tabelchelo devas resti por ke la strukturo de kolumnoj kaj vicoj ne disfalu. Principe oni povas tiam simple skribi <td></td> (au <th></th>), sen enhavo inter la malferma kaj ferma markoj. Sed multaj TTT-legiloj tiam rifuzas aperigi eventualan borderon chirkau la chelo, kaj tio povas aspekti iom strange. Se oni nepre volas, ke tia malplena chelo aperu kune kun sia bordero, oni povas iom artifiki, kaj skribi en la chelo spaceton. Sed ne taugas simpla ordinara spaceto por tio. Oni devas uzi nerompeblan spaceton (signo numero 160 en Unikodo). La XHTML-a ento (simbola nomo) por tia spaceto estas &nbsp;. Oni do skribu <td>&nbsp;</td> por tia “malplena” tabelchelo. Tio estas eta artifiko, sed sufiche senkulpa. Jen ekzemplo de tabelo kun malplenaj cheloj:

La hodiauaj mezuroj
horo temperaturo premo
10:00 11,00 12,800
11:00 13,50  
12:00 15,00 1,650
13:00 13,30  
13:00   0,002

Kelkaj mezuroj mankas, kaj tial la koncernaj tabelcheloj estas malplenaj. Jen la XHTML-kodo:

<table border="2" cellspacing="0" cellpadding="2">
<caption>La hodiauaj mezuroj</caption>
<tbody>
	<tr>
		<th>horo</th>
		<th>temperaturo</th>
		<th>premo</th>
	</tr>
	<tr>
		<td>10:00</td>
		<td>11,00</td>
		<td>12,800</td>
	</tr>
	<tr>
		<td>11:00</td>
		<td>13,50</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>12:00</td>
		<td>15,00</td>
		<td>1,650</td>
	</tr>
	<tr>
		<td>13:00</td>
		<td>13,30</td>
		<td>&nbsp;</td>
	</tr>
	<tr>
		<td>13:00</td>
		<td>&nbsp;</td>
		<td>0,002</td>
	</tr>
</tbody>
</table>

Cheloj plurkolumnaj au plurvicaj

En la antauaj ekzemploj chiu tabelchelo estas tute bonkonduta, kaj apartenas nur al precize unu kolumno kaj unu vico. Tiel estas en plej multaj simplaj tabeloj. Sed iafoje en pli komplikaj tabeloj povas okazi, ke iuj cheloj transiras el tiu strikta skemo. Povas okazi, ke unu tabelchelo etendighas tra pluraj kolumnoj, au tra pluraj vicoj, au ech ambau. Por aranghi tiajn tabelojn oni devas uzi la atributojn colspan kaj rowspan:

colspan nombro de kolumnoj, tra kiuj etendighas la chelo
rowspan nombro de vicoj, tra kiuj etendighas la chelo

Jen ekzemplo de tia tabelo, kiu montras deklinaciajn formojn de Latina vorto:

Deklinacio de is (unu-nombro)
neutra vira ina
nominativo id is ea
akuzativo eum eam
genitivo eius
dativo ei
ablativo eo ea

Jen la XHTML-kodo:

<table border="1" style="text-align: center">
<caption>Deklinacio de <em>is</em> (unu-nombro)</caption>
<tbody>
	<tr>
		<th></th>
		<th>neutra</th>
		<th>vira</th>
		<th>ina</th>
	</tr>
	<tr>
		<th>nominativo</th>
		<td rowspan="2">id</td>
		<td>is</td>
		<td>ea</td>
	</tr>
	<tr>
		<th>akuzativo</th>
		<td>eum</td>
		<td>eam</td>
	</tr>
	<tr>
		<th>genitivo</th>
		<td colspan="3">eius</td>
	</tr>
	<tr>
		<th>dativo</th>
		<td colspan="3">ei</td>
	</tr>
	<tr>
		<th>ablativo</th>
		<td colspan="2">eo</td>
		<td>ea</td>
	</tr>
</tbody>
</table>

La strukturo de tiaj tabeloj povas esti iom kaporompa, kaj kiam oni ilin kreas, povas esti oportune unue desegni la tabelon surpapere, kaj tiam zorge elkalkuli la bezonatajn valorojn de colspan kaj rowspan. Pacienco kaj zorgemo necesas por ne fushi. Studu zorge la chi-antauan ekzemplon por kompreni, kiel chio interrilatas.

Rimarku, ke en tiu ekzemplo mi aldonis iom da stilfolia kodo rekte en la XHTML-kodo per la atributo style. Normale oni metu tiajn aferojn en apartajn CSS-dosierojn, uzante ekz. class-atributon au id-atributon por ligi la bezonatajn stildeklarojn al la tabelo. Sed chi-foje mi faris escepton por montri al vi, kiel oni povas okaze enmeti tiajn aferojn rekte en la XHTML-kodon. La indikita stilo simple centrigas la tekston en chiu chelo de la tabelo.

Facile kompreneblaj tabeloj

Komplikaj tabeloj povas esti malfacile kompreneblaj, precipe por homoj, kiuj ne povas vidi la tabelon. Iuj homoj pro neceso, au pro elekto, retumas per ekz. vochlegaj programoj, kiuj nur pene povas prezenti kompleksan tabelon. Por helpi faciligi la komprenadon kaj legadon de tabeloj ekzistas kelkaj aldonaj rimedoj en XHTML:

summary atributo, kiu donas klarigan resumon de la enhavo de tabelo
scope atributo de titolaj cheloj; ghi montras, al kiuj datumaj cheloj rilatas la titola chelo
headers atributo de datumaj cheloj; ghi montras, kiu(j) titolchelo(j) validas por la datuma chelo

summary

Ghenerale oni chiam aldonu summary al chiu tabelo, krom eble la plej simplaj. Tio povas aspekti ekzemple jene:

<table border="1"
  summary="La tabelo montras kelkajn landojn kun nomo de
  la chefurbo kaj de la chefa lingvo.">
  <caption>Kelkaj landoj</caption>
  <tbody>
    <tr>
      <th>Lando</th><th>Chefurbo</th><th>Lingvo</th>
    </tr>
    <tr>
      <td>Svedujo</td><td>Stokholmo</td><td>la Sveda</td>
    </tr>
    <tr>
      <td>Germanujo</td><td>Berlino</td><td>la Germana</td>
    </tr>
    <tr>
      <td>Algherio</td><td>Alghero</td><td>la Araba</td>
    </tr>
    <tr>
      <td>Meksiko</td><td>Meksikurbo</td><td>la Hispana</td>
    </tr>
  </tbody>
</table>

Ankau povas esti, ke serchrobotoj iam atentos (au eble jam atentas) tiajn resumojn en summary-atributoj, kaj aldonas tiujn informojn al siaj indeksoj de la Reto.

scope

Per scope oni povas indiki che titola chelo, chu ghi rilatas al la kolumno, au al la vico, en kiu ghi trovighas:

<th scope="col">...</th> th-elemento, kiu estas titolo de la aktuala kolumno
<th scope="row">...</th> th-elemento, kiu estas titolo de la aktuala vico

Jen la antaua tabelo de Latina deklinacio kun aldonaj klarigaj scope-atributoj:

<table border="1" style="text-align: center">
<caption>Deklinacio de <em>is</em> (unu-nombro)</caption>
<tbody>
	<tr>
		<th></th>
		<th scope="col">neutra</th>
		<th scope="col">vira</th>
		<th scope="col">ina</th>
	</tr>
	<tr>
		<th scope="row">nominativo</th>
		<td rowspan="2">id</td>
		<td>is</td>
		<td>ea</td>
	</tr>
	<tr>
		<th scope="row">akuzativo</th>
		<td>eum</td>
		<td>eam</td>
	</tr>
	<tr>
		<th scope="row">genitivo</th>
		<td colspan="3">eius</td>
	</tr>
	<tr>
		<th scope="row">dativo</th>
		<td colspan="3">ei</td>
	</tr>
	<tr>
		<th scope="row">ablativo</th>
		<td colspan="2">eo</td>
		<td>ea</td>
	</tr>
</tbody>
</table>

Por uzanto de vochlega TTT-legilo tiaj aldonaj scope-atributoj, povas esti absolute necesaj por povi dechifri la sencon de tia tabelo. Mi ne scias, chu vere ekzistas nun tiaj vochlegiloj, kiuj atentas pri scope-atributoj, kaj iel voche indikas la sencon de la th-elementoj, sed ni ja ne verkas TTT-paghojn nur por la nuno. Ni verkas paghojn ankau por la estonteco.

Efektive jam nun eblas en ordinaraj TTT-legiloj utiligi scope-atributojn. Oni povas per stilfolio indiki diversajn prezentojn por th-elementoj kun scope="col", kaj alian por th-elementoj kun scope="row", ekzemple jene:

th[scope=col] {
	color: red;
	background-color: black;
}
th[scope=row] {
	color: black;
	background-color: red;
}

Tiu CSS-kodo donas ekzemplon de peratributaj elektiloj. Tia kodo funkcias nur en la plej modernaj kaj plej bonaj TTT-legiloj. En ekz. “Explorer 4/5/6” ili tute ne funkcias.

headers

En tre kompleksaj tabeloj la atributo row eble ne sufichas por indiki la rilatojn inter titolaj kaj datumaj tabelcheloj. Tiam oni povas anstataue (au kompletige) uzi la atributon headers, kiu estas multe pli preciza. Per ghi oni povas en datuma chelo doni liston de titolaj cheloj, kiuj validas por ghuste tiu chelo. En tian liston oni metas la id-nomojn de la koncernaj titolaj cheloj (kun spacetoj inter la nomoj). Kompreneble chiu titola chelo tiam devas havi id-atributon por ke tio funkciu. Jen ekzemplo:

Raporto pri vojaghkostoj
manghoj hoteloj transportado subsumoj
San Jose
25 Aug 1997 37,74 112,00 45,00
26 Aug 1997 27,28 112,00 45,00
subsumoj 65,02 224,00 90,00 379,02
Seattle
27 Aug 1997 96,25 109,00 36,00
28 Aug 1997 35,00 109,00 36,00
subsumoj 131,25 218,00 72,00 421,25
sumoj 196,27 442,00 162,00 800,27

Jen la XHTML-kodo:

<table border="1"
  summary="La tabelo montras la vojaghkostojn
  de la vojaghoj en Augusto al San Jose kaj Seattle">
<caption>Raporto pri vojaghkostoj</caption>
<tbody>
  <tr>
    <th></th>
    <th id="a2">manghoj</th>
    <th id="a3">hoteloj</th>
    <th id="a4">transportado</th>
    <td>subsumoj</td>
  </tr>
  <tr>
    <th id="a6">San Jose</th>
    <th></th>
    <th></th>
    <th></th>
    <td></td>
  </tr>
  <tr>
    <td id="a7">25 Aug 1997</td>
    <td headers="a6 a7 a2">37,74</td>
    <td headers="a6 a7 a3">112,00</td>
    <td headers="a6 a7 a4">45,00</td>
    <td></td>
  </tr>
  <tr>
    <td id="a8">26 Aug 1997</td>
    <td headers="a6 a8 a2">27,28</td>
    <td headers="a6 a8 a3">112,00</td>
    <td headers="a6 a8 a4">45,00</td>
    <td></td>
  </tr>
  <tr>
    <td>subsumoj</td>
    <td>65,02</td>
    <td>224,00</td>
    <td>90,00</td>
    <td>379,02</td>
  </tr>
  <tr>
    <th id="a10">Seattle</th>
    <th></th>
    <th></th>
    <th></th>
    <td></td>
  </tr>
  <tr>
    <td id="a11">27 Aug 1997</td>
    <td headers="a10 a11 a2">96,25</td>
    <td headers="a10 a11 a3">109,00</td>
    <td headers="a10 a11 a4">36,00</td>
    <td></td>
  </tr>
  <tr>
    <td id="a12">28 Aug 1997</td>
    <td headers="a10 a12 a2">35,00</td>
    <td headers="a10 a12 a3">109,00</td>
    <td headers="a10 a12 a4">36,00</td>
    <td></td>
  </tr>
  <tr>
    <td>subsumoj</td>
    <td>131,25</td>
    <td>218,00</td>
    <td>72,00</td>
    <td>421,25</td>
  </tr>
  <tr>
    <th>sumoj</th>
    <td>196,27</td>
    <td>442,00</td>
    <td>162,00</td>
    <td>800,27</td>
  </tr>
</tbody>
</table>

Noto: La chi-antaua ekzemplo estas pruntita el la normo-teksto de HTML 4.01. La tiea versio de la kodo estas iom pli komplika, char oni uzis aldone ankau la atributon axis, per kiu eblas meti chelojn en diversajn kategoriojn. Tio povas ebligi diversajn analizojn kaj raportojn bazitajn sur la informoj de tabelo. Se vi interesighas pri tiu profunda temo, vi povas studi la originan ekzemplon (kiu tamen estas verkita en HTML 4.01, ne en XHTML).

Bildoj en tabelcheloj

Tre ofte oni metas bildojn en tabelcheloj. Ofte temas tiam pri misuzado de tabeloj por grafika arangho, sed ne chiam. Ja ankau bildo povas esti parto de datumoj, kiuj estas tute tabelecaj. Oni povas ekzemple havi bildojn kun ties nomoj kaj aliaj informoj en tabelo.

Principe estas nenia problemo meti bildojn en tabelon. Jen simpla ekzemplo:

Miaj fotoj
foto priskribo dato
Mia hejmbesteto estas verda mia hejmbesteto 1 Januaro 2003
Mia hejmo estas tre komforta mia hejmo 5 Januaro 2003
Mi estas iom timema mia portreto 6 Julio 2002

Jen la XHTML-kodo:

<table border="1" cellpadding="0" cellspacing="0">
<caption>Miaj fotoj</caption>
<tbody>
  <tr>
    <th>foto</th>
    <th>priskribo</th>
    <th>dato</th>
  </tr>
  <tr>
    <td><img src="bildoj/aligatoro.jpg" alt="Mia hejmbesteto estas verda" /></td>
    <td>mia hejmbesteto</td>
    <td>1 Januaro 2003</td>
  </tr>
  <tr>
    <td><img src="bildoj/hejmo.jpg" alt="Mia hejmo estas tre komforta" /></td>
    <td>mia hejmo</td>
    <td>5 Januaro 2003</td>
  </tr>
  <tr>
    <td><img src="bildoj/portreto.jpg" alt="Mi estas iom timema" /></td>
    <td>mia portreto</td>
    <td>6 Julio 2002</td>
  </tr>
</tbody>
</table>

img-elemento do povas aperi rekte en td-elemento, same kiel teksto. Nenia problemo...

Tamen, se vi uzas ekz. Fajrovulpon por legi tiujn chi paghojn, vi eble jam notis problemeton: Sub chiu el la bildoj, Fajrovulpo lasas iom da spaco, kio aspektas iom strange. Multaj pensas, ke tio estas eraro en Fajrovulpo, sed fakte ne. Efektive Fajrovulpo agas tute ghuste. img-elementoj estas kvazau teksto, kaj se oni ne aparte indikas alian prezenton, bildoj aperas sur la bazlinio de la teksto. Tekstolinioj chiam havas iom da spaco sub la bazlinio, por ke la vostoj de literoj povu aperi. Kaj ghuste tiun spacon oni vidas en Fajrovulpo sub chiu bildo en la chi-antaua tabelo. Ja mankas vera teksto en tiuj tabelcheloj, sed tio ne gravas. Chiu bildo aperas sur la sama nivelo, sur kiu aperus teksto, se estus teksto en la chelo.

Nu, kion do fari, se oni nepre ne volas tian spacon? La respondo, kiel chiam, estas stilfolio. Normale img estas nebloka elemento (inline), kio signifas, ke ghi estas kvazau teksto. Per stilfolio oni povas tamen proponi, ke iuj img-elementoj anstataue prezentighu kiel blokaj elementoj (block), kio signifas, ke la bildo ne plu prezentighas flue kun la teksto, sed memstare.

Por fari ton, oni metu en stilfolion ekzemple la jenon:

td img {display: block;}

Provu tion. Faru XHTML-paghon el la chi-antaua ekzemplo, kaj aldonu ligon al stilfolia dosiero. En tiu dosiero skribu la chi-antauan regulon pri td img (bildoj en datumaj tabelcheloj). Se vi uzas Fajrovulpon, au alian parencan TTT-legilon, vi povas vidi, ke la bildoj tiam prezentighas sen la ghena suba spaco. Memoru, ke vi tiam devas konservi miajn ekzemplobildojn en loko, kie vi povas uzi ilin en via testopagho, kaj eble reskribi la bildadresojn laue. Au vi povas skribi absolutajn href-adresojn al miaj bildoj en mia servilo (bona ekzerco...).

Noto: Efektive la CSS-guruoj inter si iom kverelis pri tio, chu Fajrovulpo vere agas ghuste chi-okaze. La CSS-normo estas eventuale interpretebla en pli ol unu maniero chi-punkte. Multaj aliaj legiloj, ekz. “Esplorilo”, ne lasas tian spacon, se bildo estas sola en tabelchelo, sed vere (au almenau lau tiuj, kiuj programis Fajrovulpon) tiuj malnovaj legiloj agas malghuste, kontrau la CSS-normo.

Noto: La CSS-eco display povas havi precipe la jenajn valorojn: inline, block kaj none. La du unuajn ni jam tushis. La tria, none, signifas, ke la afero tute ne aperu. Tio povas foje esti utila. Ekzemple oni povas skribi apartan stilfolion por presado sur papero, kaj en ghi elekti kashi iujn aferojn, kiuj ne estas bezonataj en papera prezento (ekz. aron da ligiloj, kiuj nur ghenas surpapere, char ili chiuokaze ne funkcias tiam). display povas havi ankau aliajn specialajn valorojn, kiuj tamen ankorau apenau funkcias en iuj TTT-legiloj.

Alia solvo estas la jena stilregulo, kiu kauzas, ke bildoj en datumaj tabelcheloj alighas al la subo de la spaco por teksto (anstatau al la bazlinio de la teksto):

td img {vertical-align: bottom;}

Chio chi denove montras, ke tre indas testi siajn TTT-paghojn en diversaj TTT-legiloj.

Al la sekva leciono