Kiel fari TTT-paghojn

Formalajhoj

En la enkonduka leciono ni havis ekzemplon de simpla XHTML-pagho, sed kiel mi skribis tie, la kodo ne estis tute kompleta. La XHTML-normo postulas, ke oni enkonduku la dokumenton per kelkaj pliaj formalajhoj. Bonshance oni ne bezonas tre multe kompreni la detalojn de tiuj formalajhoj. Oni povas ilin simple kopii shablone. Tial vi ne bezonas perfekte kompreni chiujn detalojn en tiu chi leciono. Plej gravas la praktika ekzemplo.

Sendube vi senpacience volas lerni pli da elementoj por povi fari pli komplikajn paghojn kun interesa enhavo. Sed unue necesas ekkonatighi kun la formalajhoj. Se oni lernas pri ili dekomence, oni havas malpli da problemoj poste.

Deklaro pri dokumentotipo

XHTML-dokumento devas komencighi per deklaro pri la dokumentotipo. Se la dokumento uzas XHTML-on, oni deklaru jene:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Tiu deklaro aperu komence de la dokumento, antau la html-elemento. Kopiu ghin ghuste. Atentu pri majuskloj kaj minuskloj.

Rimarku, ke la dokumentotipa deklaro ne estas ordinara XHTML-elemento. Ghi ne havas komencmarkon kaj finmarkon. Ghi estas tute alispeca afero.

Noto: Vere ekzistas tri variantoj de XHTML 1.0: Strikta (“Strict”), Transira (“Transitional”) kaj Kadrara (“Frameset”). La montrita deklaro estas por la Strikta varianto. La aliajn variantojn mi ne traktos en tiu chi kurso, precipe char ili lau mi ne estas uzindaj.

Noto: Oni povas antau la deklaro pri dokumentotipo meti alian deklaron: XML-deklaron (= XML-a procesinstrukcio). Sed tia deklaro ne estas deviga, se oni uzas Unikodon (pli pri signokodoj aperos en posta leciono). Se vi volas vidi, kiel aspektas XML-deklaro, vi povas rigardi mian alian pagharon pri XHTML.

Deklaro pri nomspaco

Krome oni aldonu ene de la komencmarko de la html-elemento indikon pri t.n. nomspaco (kio tio efektive estas, oni apenau bezonas scii). Ghi aspektu jene:

<html xmlns="http://www.w3.org/1999/xhtml">

Deklaro pri signokodo «

Oni devas ankau iel anonci, kian signokodon oni uzis. Ni uzos por chiuj paghoj de tiu chi kurso la signokodon UTF-8 (varianto de Unikodo). Se pagho estas publikigita sur servilo, la informon pri signokodo sendu prefere la servilo mem, sed se tio ne okazas, oni povas anonci la signokodon en la XHTML-pagho. Tiam oni aldonas t.n. meta-elementon en la head-elemento. Jene:

<head>
  <meta http-equiv="Content-Type"
    content="text/html; charset=utf-8" />
  <title>Mia unua TTT-pagho</title>
</head>

Noto: Eble vi rimarkas, ke la meta-elemento aspektas iom alie ol la ekzemploj de elementoj, kiujn ni jam vidis. Ghi estas t.n. “malplena” elemento. Ghi konsistas el nur unu marko, kiu estas samtempe komenca kaj fina. Ni lernos pli pri malplenaj elementoj poste.

Kompleta pagho en XHTML 1.0 Strikta

Jen finfine, post aldono de la necesaj formalajhoj, nia ekzemplo de simpla XHTML-kodo aspektas jene:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type"
      content="text/html; charset=utf-8" />
    <title>Mia unua TTT-pagho</title>
  </head>
  <body>

    <h1>Jen la cheftitolo.</h1>

    <p>Jen iom da teksto.</p>

    <p>Jen dua alineo kun teksto.</p>

  </body>
</html>

Por kio utilas la formalajhoj?

Oni povas demandi sin, por kio utilas tiuj formalajhoj. Ni jam vidis, ke TTT-legilo akceptas la kodon ankau en la pli simpla formo.

Nu, la reguloj diras, ke estu tiuj formalajhoj, kaj prefere oni sekvu la regulojn. Sed estas ankau almenau tri praktikaj kialoj aldoni chiujn formalajhojn:

Serchiloj kaj legosignoj «

Tre grava estas la title-elemento kaj ghia enhavo. Serchoservoj kiel ekz. Google tre atentas la enhavon de title. Tial indas elekti signifoplenan kaj taugan tekston por title. Krome, kiam homoj faras legosignon en TTT-legilo, ofte uzighas automate la enhavo de title kiel nomo de la legosigno. title do enhavu mallongan kaj trafan titolon de la pagho. (Ekz. “Mia hejmpagho” au “Bonvenon!” diras tre malmulte al serchilo, kaj malbone funkcias kiel nomo de legosigno.)

Validumado «

Kiam oni skribas XHTML-kodon, oni foje faras erarojn. Por facile trovi la erarojn kaj fari la kodon senerara (valida), oni povas uzi specialan programon nomatan validumilo. Per tia programo oni validumas kodon. Tio signifas, ke oni kontrolas, chu la kodo sekvas la regulojn de XHTML. Sed ekzistas diversaj marklingvoj, kaj diversaj versioj de (X)HTML. Per la deklaro de dokumentotipo oni informas la validumilon, kiun lingvon kaj version oni intencis sekvi. Pagho sen tia deklaro ne estas validumebla.

Oni povas instali validumilon en sian propran komputilon, sed tio estas iom komplika afero. Pli facile estas uzi iun el la validumaj servoj en la reto. La plej fama estas la (Anglalingva) validumilo de W3C (la organizo, kiu decidas la regulojn pri XHTML, CSS k.t.p.):

Ekde nun alkutimighu chiam kontroli chiujn viajn paghojn, ankau simplajn testojn, per validumilo. Komence povas esti iom malfacile kompreni la erarmesaghojn de validumilo, sed post iom da praktikado validumilo farighas gravega helpilo. Komencu tuj! Kopiu nian simplan ekzemplon, kun chiuj formalajhoj. Konservu ghin kiel dosieron, kaj validumu ghin.

Launorma prezentado

Antaue la TTT-legiloj tute ignoris la dokumentotipan deklaron de pagho. Sed la nuntempaj legiloj kondutas alie. Tiuj legiloj atentas la deklaron, au la mankon de deklaro, kaj decidas laue, kiel prezenti la paghojn. Ili tiam elektas inter du prezentomodoj: Kaprica modo (“Quirks mode”), kaj Strikta modo (“Strict mode”).

En la kaprica modo la legiloj imitas la prezentokapricojn (erarojn) de malnovaj legiloj. En la strikta modo la legiloj provas strikte sekvi la regulojn pri XHTML kaj CSS.

Se vi sekvos la ekzemplojn chi tie, la legiloj uzos la striktan modon. Tio estas rekomendinda. Se vi tute forlasos la formalajhojn, tiaj legiloj anstataue uzos la kaprican modon.

Noto: La kaprica modo estas nur por malnovaj paghoj, kiuj estas verkitaj tiel, ke ili funkciu bone en malnovaj kaj eraroplenaj legiloj. Modernaj legiloj farighas pli kaj pli striktaj kaj launormaj, kaj novaj paghoj estu farataj por bone funkcii en ili, kaj en estontaj legiloj. Eble en estontaj legiloj ne plu estos kaprica modo, kaj eble eraroplenaj paghoj estonte tute ne plu funkcios. Tial oni neniam intence skribu novajn paghojn tiel, ke uzighu la kaprica modo.

Noto: Estas multe da komplikajhoj pri tiu tuta afero de modshaltado, sed se vi sekvas la ekzemplojn en tiu chi kurso, uzante chiam XHTML-on 1.0 Strikta, kaj se vi chiam ellasas la XML-deklaron, viaj paghoj ricevos la striktan prezentomodon, kaj vi ne bezonos zorgi pri la komplikajhoj.

Al la sekva leciono