Artikkelissa tarkastellaan taulukoiden, linkkien, kuvien ja lainauksien esteetöntä toteutusta WWW-sivulle.
WWW-sivulle voi tulla monipuolisia elementtejä, joiden lisäämisessä on otettava mahdollisimman hyvin huomioon erilaiset käyttäjät.
WWW-sivu, esteettömyys, taulukko, linkki, kuva, lainaukset, virheet ja erikoismerkit.
WWW-sivuja tehtäessä sivuille on usein tarpeen liittää taulukkomuotoista tietoa, tekstiä havainnollistavia kuvia, lisätietoa antavia linkkejä ja erilaisia lainauksia. Kaikkien elementtien lisäämisessä voidaan ottaa huomioon sivun erilaiset käyttäjät, jotta tehtävät ratkaisut saadaan mahdollisimman esteettömiksi. Sivujen tekijöille saattaa tulla muutamia kiusallisia HTML-elementteihin liittyviä kirjoitusvirheitä, jotka voi välttää tiedostamalla ongelmakohdat. Sivuille ja osoitteisiin tulevat erikoismerkit joudutaan koodaamaan sivun esteettömyyden varmistamiseksi.
"Esteettömän WWW-sivun toteuttaminen" -luvussa käsittelimme otsikoita, tekstikappaleita ja listoja sisältävän WWW-sivun tekemistä. Tässä luvussa tarkastelemme muutamia muita tarvittavia HTML-rakenteita, kuten kuvien, linkkien ja taulukoiden lisäämiseen tarvitsemiamme määrityksiä. Käytettävien määritysten pohjana on mahdollisimman hyvän esteettömyyden toteuttaminen, vaikka sitä ei korostettaisi erikseen.
Monissa HTML-elementeissä joudumme käyttämään lisämäärityksiä eli attribuutteja, koska pelkkä HTML-elementti ei riitä kertomaan kaikkea tarvittavaa tietoa.
Esimerkiksi kuvan lisäämiseen tarkoitettu img-elementti kertoo ainoastaan kuvan sijaintipaikan WWW-sivun tekstien joukossa. Tämän vuoksi kuvan lisäämisen yhteydessä kerromme lisättävän kuvan fyysisen sijainnin hakemistorakenteessa erillisellä src-attribuutilla. Lisäksi määrittelemme kuvalle esteettömyyttä nostavan vaihtoehtoisen selitystekstin alt-attribuutin avulla.
Tarkemmin näiden attribuuttien käyttöä käsitelemme kuvien lisäämisen yhteydessä.
Attribuutit sijoitamme aina elementin aloituselementin sisään.
Esimerkin tapauksessa img-elementin aloituselementti toimii samalla myös lopetuselementtinä, jolloin elementin loppuun on lisätty kauttaviiva (/).
Attribuuttien arvon liitämme attribuutin nimeen yhtäsuuruusmerkin (=) avulla.
Attribuutin arvon määritelemme aina lainausmerkkien sisään. Esimerkissä kuvan sijainti hakemistorakenteessa ja kuvan nimi kerrotaan src-attribuutilla.
Attribuutin arvoksi on esimerkissä määritelty pelkästään kuvan nimi kuva1.png, koska kuva ja HTML-dokumentti sijaitsevat samassa hakemistossa.
<p> <img src="kuva1.png" alt="Kuvan vaihtoehtoinen selitysteksti" /> </p>
Lohkotason eli kappaletason elementeillä tarkoitetaan
yhtenäisen lohkon muodostavia elementtejä. Tällaisia lohkoja ovat esimerkiksi tekstikappaleet (p-elemementin sisällä) ja listat (ul- tai ol-elementin sisällä). Yhden lohkotason elementin sisään (esimerkiksi div-elementti) voimme joissakin tapauksissa panna useitakin lohkotason elementtejä eli esimerkiksi tekstikappaleita. Tekstikappaleen tai otsikoiden sisään emme kuitenkaan voi sijoittaa muita lohkotasoisia elementtejä, vaan ainoastaan merkkitason elementtejä. Lohkotason elementeillä on monenlaista käyttöä, koska niillä voimme merkitä erilaisia WWW-sivun rakenteellisia osia tai voimme erottaa toisistaan WWW-sivun navigoinnin ja sisällön.
Merkkitason elementit (esimerkiksi strong ja img) sijaitsevat aina jonkin
lohkotason elementin sisällä. Kuvat ja vahvennukset sijaitsevat useimmiten tekstinkappaleen, listan tai taulukon sisällä. Merkkitason elementin
sisällä voi sijaita toinen merkkitason elementti (vahvennuksen sisällä voi olla linkki), mutta ei koskaan lohkotason elementtiä.
Luvussa Esteettömän WWW-sivun toteuttaminen kävimme läpi normaalin tekstikappaleen, otsikoiden ja muutaman listan määrittelyt. Tässä yhteydessä käymme läpi muutamia uusia, mutta usein käytettyjä kappaletasoisia elementtejä. Tällaisia ovat yleistä lohkoa kuvaava div-elementti, muotoilematonta tekstiä merkitsevä pre-elementti, tekijätietoja sisältävä address-elementti ja määritelmälistan ja erilaisten lainauksien merkitsemiseen käytttävät elementit.
Kappaletason elementtejä on olemassa monia muitakin, mutta niitä ei tarkastella tässä yhteydessä. Esimerkiksi kaikkien HTML 4.01 -suositukseen kuuluvien elementtien kuvaukset löytyvät W3C:n HTML 4.01 -suosituksesta osoitteesta <URL: http://www.w3.org/TR/html4/>.
div-elementti on monikäyttöinen kappaletason elementti.
WWW-sivuja tehtäessä on usein tarve erottaa jotkin sivun eri osat toisistaan.
Tällaiset osat voivat olla esimerkiksi sivuun liittyvän navigoinnin ja sisällön erottaminen.
div-elementillä tämä onnistuu helposti, koska div-elementin sisään voi tulla useita kappaletasoisia elementtejä. div-elementillä ei ole varsinaista rakenteellista erityismerkitystä, joten sitä voidaan käyttää muista elementeistä muodostuvien lohkojen tekemiseen. div-elementtiä ei kuitenkaan kannata käyttää tekstikappaleiden tai otsikoiden merkitsemiseen, koska niitä varten on olemassa omat elementtinsä!
Esimerkissä muotoillaan navigointia ja sisältöä erillisinä osina (esimerkiksi erilaiset taustavärit), joten ne erotetaan toisistaan div-elementin avulla. Erillisen navigointilohkon merkitseminen mahdollistaa myös koko navigoinnin siirtämisen kehyksien tapaisesti sivun oikeaan tai vasempaan laitaan CSS:n avulla.
Elementissä on käytetty class-attribuuttia määrittelemään lohkolle oma luokka(nimi), johon viittamalla voimme määritellä lohkolle ominaisuuksia CSS-tiedostossa.
Esimerkissä (Kuva 1) CSS-tiedostossa on määritelty lohkolle sisällöstä erottuva taustaväri ja raja.
Kuva 1. Erillisen navigoinnin määrittäminen.
<div class="navigointi">
<ul>
<li><a href="eka.html">Eka linkki</a></li>
<li><a href="toka.html">Toka linkki</a></li>
<li><a href="kolmas.html">Kolmas linkki</a></li>
</ul>
</div>
<div class="sisalto">
... Tänne tulee sivun varsinainen sisältö ...
</div>
pre-elementillä (PREformatted text) voimme
määritellä tekstikappaleita, joiden haluamme
näkyvän täsmälleen kirjoitusasussaan.
Selaimet rivittävät normaalien tekstikappaleiden
(p-elementti) tekstin selainikkunaan sopivaksi
sekä poistavat ylimääräiset
välilyönnit ja rivinvaihdot tekstistä automaattisesti. Usein
kuitenkin erilaiset ohjelmakoodit, kuten tämän artikkelin
esimerkit, halutaan näkyviin täsmälleen
kirjoitusasussaan. Tällöin käytetään
p-elementin sijasta pre-elementtiä.
pre-elementtiä ei saa koskaan käyttää ulkoasun muotoilemiseen
eli esimerkiksi tekstin pakkorivittämiseen!
Esimerkki on poimittu edellisestä luvusta järjestetyn listan esimerkkien yhteydestä.
Esimerkissä on ylimääräisiä rivinvaihtoja lista-alkioiden välissä
ja muutama sisentävä välilyönti erottamassa lista-alkiot muusta listasta.
Esimerkissä halutaan näyttää listan tekevä koodi ja korostaa rakennetta sisennyksin ja rivinvaihdoin.
Kannattaa kuitenkin muistaa, että pre-elementtiin tulevia HTML-elementtien koodeja ei näytetä,
vaan elementit toimivat kuten muuallakin artikkelissa.
Jos HTML-elementit halutaan näkyville, pienempi kuin ja suurempi kuin -merkit täytyy
koodata erikseen, kuten esimerkissä on tehty.
Kuva 2. Muotoilematon teksti selainikkunassa.
<pre> <ol> <li>Ensimmäinen lista-alkio</li> <li>Toinen lista-alkio</li> <li>Kolmas lista-alkio</li> </ol> </pre>
WWW-sivun tekijän yhteystiedot voidaan esittää address-elementin avulla. Kuitenkaan
kaikkiin dokumentissa oleviin yhteystietoihin ei pidä
käyttää address-elementtiä. Alla olevassa esimerkissä on käytetty
a-elementtiä tekemään sähköpostiosoitteesta sähköpostinlähetyslinkki.
Lisäksi esimerkissä on käytetty br-elementtiä tekemään pakotettu rivinvaihto osoitetietojen sisällä.
<address> Petri Heinonen (<a href="mailto:peheinon@mit.jyu.fi">peheinon@mit.jyu.fi</a>)<br /> Avoin yliopisto, Jyväskylän yliopisto </address>
Kuva 3. Tekijän osoitetietojen näkyminen selaimessa.
Lainauksien merkitsemiseen on olemassa erilaisia elementtejä.
blockquote-elementillä voidaan merkitä
koko kappaleen mittaisia lainauksia.
cite-attribuutti sisältää linkin
lainattuun lähteeseen.q-elementti määrittelee lyhyen, tekstin seassa sijaitsevan lainauksen. Kyseessä on merkkitason elementti, jonka täytyy sijaita esimerkiksi tekstikappaleen sisällä.cite-elementillä merkitään sitaattien lähteitä, kuten henkilöiden tai lehtien nimiä. Kyseessä on merkkitason elementti, jonka täytyy sijaita esimerkiksi tekstikappaleen sisällä.Esimerkissä on lainattu W3C:n Suomen toimiston raportista katkelma. cite-attribuutilla osoitetaan dokumenttiin, josta lainaus on poimittu. Selain sisentää oletuksena lainattua kappaletta, mutta lainauksen muotoilut voidaan määritellä kokonaan uudenlaisiksi CSS-tyylien avulla.
<blockquote cite="http://www.w3c.tut.fi/reports/2003/0508wai-intro/index.html"> <p> Saavutettavuudella (accessibility) tarkoitetaan erilaisten käyttötarpeiden huomioimista arkisia sovelluksia toteutettaessa. Saavutettavuus poistaa käytettävyyden esteitä ja lisää käyttömukavuutta. Jos saavutettavuutta ei oteta erilaisia tuotteita, välineitä ja palveluja suunniteltaessa riittävästi huomioon, saattaa osa asiallisista käyttäjistä jäädä jopa kokonaan tavoittamatta. </p> </blockquote>
Kuva 4. Kappalelainaus.
Seuraavassa esimerkissä on kyseessä hieman lyhempi lainaus.
cite-elementtiä on käytetty merkitsemään henkilö, jota lainataan, ja
q-elementillä määritellään varsinaisen lainauksen sisältö. Selain on oletuksena korostanut lainauksen kohdetta ja lisännyt automaattisesti lainausmerkit lainauksen ympärille.
<p> Kuten <cite>Ossi Nykänen</cite> kirjoittaa artikkelissaan: <q>Saavutettavuus ei tarkoita tylsää tai pelkkään tekstiin nojautuvaa sisältöä tai hölmön näköistä esitystapaa.</q> </p>
Kuva 5. Lyhyempi lainaus kappaleen sisältä.
Määritelmälista (Definition List) tarkoittaa listaa, jossa on erillinen termi (Denition Term) ja sitä vastaavaa kuvaus (Definition Description). Listaa käytetään nimensä mukaisesti määritelmä- tai käsitelistojen tekemiseen, joten jokainen ei sitä tarvitse.
dl-elementti määrittää määritelmälistan aloituskohdan. Määritelmälistan kaikki termit ja kuvaukset tulevat yhden dl-elementin sisään.dt-elementillä määrillään termi, jolle halutaan antaa kuvaus.dd-elementillä määritellään kuvaus, joka kuvaa edellä dt-elementissä annettua termiä.Alla olevassa esimerkissä on määritelty kaksi termiä: XHTML ja URL. Selain muotoilee automaattisesti määritelmälistan termin ikkunan vasempaan reunaan ja tekee määritelmän eteen pienen sisennyksen.
<dl>
<dt>XHTML</dt>
<dd>WWW-dokumentin rakenteen kuvaamiskieli,
joka noudattaa XML:n kielioppia.</dd>
<dt>URL</dt>
<dd>WWW-sivun osoite.</dd>
</dl>
Kuva 6. Määritelmälista.
Taulukolla voimme helposti esittää taulukkomuodossa olevia tietoja. Taulukolla ei kannata taittaa HTML-sivua, koska se aiheuttaa esteitä joillekin sivujen lukijoille. Esimerkiksi useimmat ääni- ja tekstiselaimia käyttävät eivät näe sivun graafista ulkoasua, joten taulukkotaitettu sisältö voi olla vaikeasti hahmotettavissa. Myöskään taulukkomuotoisia tietoja ei kannata panna muiden elementtien sisään.
Esimerkissä on tehty kolmerivinen ja kaksisarakkeinen taulukko. Taulukon yläpuolella on määritelty koko taulukkoon liittyvä otsikko. Taulukon ensimmäisellä rivillä on taulukon sarakeotsikot, joiden alapuolisilla riveillä ovat taulukon sisällöt. Esimerkin alapuolelta löytyy tarkemmat selitykset esimerkin eri kohtiin. Joissakin selaimissa on oletuksena, että taulukoihin ei lisätä lainkaan reunoja. Alla olevaan esimerkkiin on lisätty reunat CSS:n avulla, jotta esimerkki olisi havainnollinen. Muut taulukon osat ovat muotoilemattomia.
Kuva 7. Taulukon käyttöesimerkki.
<table summary="Kaksisarakkeinen ja kolmerivinen esimerkkitaulukko"> <caption>Koko taulukon otsikko</caption> <tr> <th>Ensimmäisen sarakkeen otsikko</th> <th> Toisen sarakkeen otsikko</th> </tr> <tr> <td>Ensimmäisen sarakkeen ylin rivi</td> <td>Toisen sarakkeen ylin rivi</td> </tr> <tr> <td>Ensimmäisen sarakkeen alin rivi</td> <td>Toisen sarakkeen alin rivi</td> </tr> </table>
table-elementillä määrittelemme taulukon alku- ja loppukohdan.
Kaikki taulukon sisään tulevat asiat, kuten otsikot, otsikkorivit, rivit ja solut merkitsemme table-elementin sisälle.summary-attribuutti (table-aloituselementin sisällä) sisältää sanallisen kuvauksen taulukon sisällöstä ja mahdollisesti myös muodosta. Teksti on erityisen hyödyllinen esimerkiksi ääniselaimen käyttäjille. Tekstin perusteella he voivat tehdä päätöksen taulukon ohittamisesta tai saavat taulukon ymmärtämistä helpottavia vihjeitä.caption-elementillä määrittelemme koko taulukkoon liittyvän otsikon. Jos liitämme taulukkoon otsikon, caption-elementin on sijaittava heti aloittavan table-elementin jälkeen.tr-elementtillä määrittelemme taulukon rivin. Esimerkin määrittelyistä kannattaa huomata, että taulukon sarakkeet (itse asiassa solut) määritellään jokaisen rivin sisään. Myös otsikkosolut tulevat tavallisen taulukkorivin (tr-elementti) sisään.th-elementillä määrittelemme taulukkon otsikkosolut. Taulukon otsikkosolut sijaitsevat yleensä taulukon yläosassa tai taulukon vasemmassa reunassa. Otsikkosolujen sisälle (aloitus- ja lopetuselementin väliin) tulevat rivien tai sarakkeiden otsikkotekstit. Oletuksena selaimet muotoilevat otsikkosolut hieman tavallisista soluista eroavasti.td-elementillä määritelemme taulukon yksittäiset solut. Taulukon varsinainen sisältö kirjoitetaan td-elementtien sisään.Voimme tarvittaessa myös yhdistää taulukon sarakkeita ja rivejä. Yhdistäminen onnistuu colspan ja rowspan-attribuuttien avulla.
rowspan-attribuutilla
määrittelemme kuinka monen rivin alueelle
kyseinen solu laajenee. 0 tarkoittaa, että solu laajenee
kaikkien rivien suuruiseksi.colspan-attribuutilla määrittelemme kuinka monen sarakkeen alueelle kyseinen solu laajenee. 0 tarkoittaa, että solu laajenee kaikkien sarakkeiden suuruiseksi.
Seuraavassa esimerkkissä taulukon vasemman puoleisen sarakkeen kaksi viimeistä riviä on yhdistetty yhdeksi soluksi. Tällöin kahdelle alimmaiselle riville (tr-elementti) ei ole määritelty kuin yhdet td-elementit, jotka toimivat oikean puoleisen sarakkeen soluina. Vastaavasti taulukon otsikkorivin jälkeen on ensimmäisen rivin kaksi sarakketta yhdistetty yhdeksi soluksi. Tällöin kyseiselle riville ei ole määritelty kuin yksi td-elementti.
<table summary="Taulukon koosteteksti"> <caption>Koko taulukon otsikko</caption> <tr> <th>Ensimmäisen sarakkeen otsikko</th> <th> Toisen sarakkeen otsikko</th> </tr> <tr> <td colspan="2">Kahden sarakkeen ja yhden rivin solu</td> </tr> <tr> <td rowspan="3">Yhden sarakkeen ja kolme rivin solu</td> <td>Toisen sarakkeen toinen</td> </tr> <tr> <td>Toisen sarakkeen kolmas</td> </tr> <tr> <td>Toisen sarakkeen </td> </tr> </table>
Kuva 8. Taulukon rivien ja sarakkeiden yhdistäminen.
WWW-sivulle voimme tehdä kahdenlaisia linkkejä: ulkoisia ja sisäisiä. Dokumentin ulkoisella linkillä tarkoitetaan linkkiä, jota seuraamalla joudutaan kokonaan toiseen dokumenttiin. Sisäisellä linkillä vastaavasti tarkoitetaan linkkiä, jota seuraamalla päästään saman dokumentin toiseen osaan. Tällainen linkki on todella käyttökelpoinen esimerkiksi sisällysluettelossa.
Kumpikin linkki tehdään a-elementtiä (anchor) käyttäen.
Elementin sisään eli aloitus- ja lopetuselementtien väliin tulee havainnollinen linkkiteksti.
Linkkitekstiä määrittäessä kannattaa muistaa muutamia hyvän linkkitekstin ominaisuuksia.
Linkkien oikea toiminta on myös hyvä varmistaa linkkejä tehtäessä. WWW-sivuja selatessa törmää mitä eriskummallisimpiin linkkeihin, jotka yrittävät rajoittaa käyttäjän liikkumista sivustolla. Mitään rajoituksia ei kuitenkaan kannata alkaa miettiä, vaan kannattaa aina muistaa linkkien perustoiminta.
mailto-linkki. Esimerkki mailto-linkin käytöstä tulee myöhemmin.Linkit ovat hyvin tärkeä siirtymistie sivuilta toiselle, joten linkkejä tehtäessä kannattaa myös muistaa muutamia linkkien ulkoasuun liittyviä asioita. Linkkien ulkoasu (vierailematon, vierailtu, aktiivinen) voidaan määritellä CSS-tyylien avulla hyvinkin tarkoin.
Linkkielementti ei yksistään riitä kertomaan linkin kohdetta, vaan linkin tekemisessä tarvitaan myös muutamaa attribuuttia.
href-attribuutti viittaa osoitteeseen, jonne linkistä halutaan siirtyä.
Attribuuttiin voidaan sijoittaa kokonainen WWW-osoite (URL), jos linkki johtaa kokonaan toiselle sivustolle. Jos linkki taas johtaa saman sivuston toiseen dokumenttiin, linkiksi kannattaa määritellä hakemistorakenneviittaus.title-attribuuttiin voidaan
määritellä linkkitekstiä täydentävä otsikko. Jos linkkiteksti ei ole riittävän selkeä, title-attribuutilla kannattaa kertoa tarkentavaa tietoa linkin kohteesta.
Seuraavassa esimerkissä on absoluuttinen linkki Essikurssiin. href-attribuutilla on kerrottu
sivun koko osoite, jonne halutaan siirtyä. title-attribuutilla on haluttu tarkentaa hieman linkin kohteena olevaa sivustoa. Esimerkin linkki voi sijaita missä tahansa dokumentissa millä tahansa WWW-palvelimella. Esimerkkikuvasta nähdään, että käytetty selain näyttää title-tekstin kun hiiren osoitin viedään linkin päälle.
<p>
<a href="http://appro.mit.jyu.fi/essikurssi/"
title="Esteettömän WWW-sisällöntuotannon kurssi" >Essikurssi</a>
toimii esimerkkinä esteettömän sivuston tekemisestä.
</p>
Kuva 9. Absoluuttinen linkki Essikurssille.
Seuraavassa esimerkissä on tehty suhteellinen eli sivuston sisäinen linkki dokumentista toiseen. Suhteellisia linkkejä kannattaa käyttää esimerkiksi omaa sivustoa tehtäessä. Suhteellisten linkkien avulla varmistetaan, että tehty sivusto toimii myös sivuston siirtämisen jälkeen. Sivusto voidaan joutua siirtämään toiselle palveluntarjoajalle (WWW-palvelimelle) tai toisenlaiseen hakemistorakenteeseen. Siirtämistä pitäisi välttää viimeiseen asti sivuston löytymisen vuoksi, mutta joskus sellaistakin joutuu tekemään. Esimerkissä linkin kohde löytyy dokumentin sisältävän hakemiston äitihakemiston (..) alla sijaitsevasta t2-nimisestä hakemistosta. Linkki viittaa kyseisen hakemiston index.html-nimiseen tiedostoon.
<p>Tarkemmin HTML-sivun tekemiseen voit perehtyä artikkelissa <a href="../t2/index.html">Yksinkertaisen HTML-sivun tekeminen</a>. </p>
Dokumentin sisäisiä linkkejä tarvitsemme esimerkiksi sisällysluettelon tekemisessä. Dokumentin sisäiset linkit mahdollistavat kätevän siirtymisen dokumentin osasta toiseen, jolloin voimme siirtyä suoraan lukemaan dokumentin meitä kiinnostavaa osaa.
Ennen sisällysluettelon tekemistä dokumentin hyppykohdat (esimerkiksi otsikot) täytyy nimetä yksikäsitteisesti, jotta osataan siirtyä suoraan oikeaan kohtaan.
Nimeäminen tehdään id-attribuutilla seuraavan esimerkin mukaisesti. Esimerkkinä käytetään artikkelin
Esteettömän WWW-sivun toteuttaminen sisällysluetteloa. Kaikkiin dokumentin h2-tasoisiin otsikoihin on lisätty yksikäsitteinen id-attribuutti.
<h2 id="perustukset">WWW-sivun perustukset</h2> ... <h2 id="otsikko">Otsikot - rakenteen määrittäjät</h2> ... <h2 id="tekstikappale">Tekstikappaleiden erottaminen</h2> ... <h2 id="listat">Listat - järjestyksessä vai ei?</h2> ...
Aiemmin hyppykohdan merkitseminen tehtiin a-elementin name-attribuutilla, mutta tapa on poistumassa käytöstä. Tapaa ei ole järkevää esitellä tässä yhteydessä.
Hyppykohtien (id-attribuuttien) merkitsemisen jälkeen voimme tehdä varsinaisen sisällysluettelon. Linkit tehdään samalla tavoin kuin aiemminkin, mutta nyt href-attribuutin arvo alkaa risuaitamerkillä (#).
Heti merkin jälkeen on määritelty sen otsikon id-attribuutin arvo, johon linkin halutaan hyppäävän, kun linkkiä napsautetaan hiirellä.
Seuratessamme sisäistä linkkiä selainikkuna vierittää WWW-sivua siten, että selainikkunan yläosaan tulee näkyville linkin osoittama kohta eli esimerkin tapauksessa otsikko.
<h2>Sisällysluettelo</h2> <ul> <li><a href="#perustukset">WWW-sivun perustukset</a></li> <li><a href="#otsikko">Otsikot - rakenteen määrittäjät</a></li> <li><a href="#tekstikappale">Tekstikappaleiden erottaminen</a></li> <li><a href="#listat">Listat - järjestyksessä vai ei?</a></li> <li><a href="#tarkea">Tärkeiden asioiden korostaminen</a></li> <li><a href="#susi">Sudenkuoppien välttelyä</a></li> <li><a href="#validius">Sivun tarkistaminen - lopullinen tuomio?</a></li> <li><a href="#tehtavat">Tehtäviä</a></li> </ul>
Kuva 10. Sisäinen linkki sisällysluettelossa.
Sähköpostilinkillä tarkoitetaan tässä yhteydessä henkilön sähköpostiosoitteesta tehtyä linkkiä, jonka seuraaminen avaa näkyville sähköpostiohjelman.
Tällainen linkki esiintyikin jo address-elementin esimerkin yhteydessä. Sähköpostilinkki eroaa tavallisesta linkistä siinä, että
href-attribuutin arvoksi määritellään sähköpostiosoite ja sitä edeltämään mailto-määritys (mailto:osoite@palvelin.fi).
mailto-määrityksellä mahdollistetaan oletussähköpostiohjelman avautuminen näkyville linkkiä napsautettaessa.
Ilman määritystä yritettäisiin avata näkyville sähköpostiosoitteen mukainen sivu, joka luultavimmin antaa näkyville virheilmoituksen.
Alla olevassa esimerkissä sähköpostilinkkiä on käytetty osoitetietojen määrittämisessä.
<address> Petri Heinonen (<a href="mailto:peheinon@mit.jyu.fi">peheinon@mit.jyu.fi</a>)<br /> Avoin yliopisto, Jyväskylän yliopisto </address>
Kuvien lisäämisellä voimme havainnollistaa tai elävöittää WWW-sivua. Kuvien lisäämisessä on kuitenkin oltava varovainen, koska niiden liikakäytöllä saadaan helposti luotua esteitä esimerkiksi modeemikäyttäjille. Kuvien lisäämisessä kannattaakin muistaa seuraavia asioita:
alt-teksti, jonka avulla kuvan sisältö välitetään kuvia tukemattomien selainten käyttäjille.
Myös hitaan yhteyden vuoksi käyttäjä on voinut poistaa kuvat näkyviltä. Koristekuvissa voi käyttää tyhjää alt-tekstiä.Kuvat liitetään HTML-dokumenttiin img-elementin avulla.
img-elementtiä kutsutaan korvattavaksi elementiksi, koska kuva ladataan elementin sijaintipaikalle WWW-sivulle. Kuvien lisäämisessä tarvitaan img-elementille muutama attribuutti, joiden avulla kerrotaan kuvasta tarpeellisia tietoja.
src-attribuutti kertoo paikan, jossa kuva
sijaitsee hakemistorakenteessa. alt-attribuutti kertoo kuvalle vaihtoehtoisen
tekstin, joka näytetään, jos kuvaa ei ole
saatavilla tai kuvaa ei pystytä
näyttämään.
Kuvan vaihtoehtoista tekstiä kannattaa oikeasti miettiä, jos kuvan tietosisältö ei käy ilmi esimerkiksi tekstistä.longdesc-attribuutilla voidaan määritellä kuvalle pitkä ja tarkka kuvaus. Attribuutin arvoksi ei laiteta kuvausta vaan WWW-osoite, josta kuvaus löytyy.title-attribuutti kertoo kuvalle
näytettävän tarkan sanallisen otsikon.
Joissakin selaimissa otsikon saa näkyville
viemällä hiirikursorin kuvan päälle.Esimerkiksi on otettu tämän artikkelin ensimmäinen kuva.
Kuvan ja kuvateksti sijoittamista varten on käytetty div-elementtiä, jolle on annettu CSS-tyyleillä haluttuja ominaisuuksia (liu'utus oikeaan laitaan).
Tämän jälkeen löytyy img-elementti, johon on määritelty tarvittavat attribuutit. img-elementistä kannattaa huomata,
että sillä ei ole lopetuselementtiä ollenkaan. Elementti lopetetaan sijoittamalla aloituselementin loppuun kauttaviiva (/) ennen suurempi kuin -merkkiä.
<div class="pictright"> <img src="kuva1.png" alt="Navigoinnin lisääminen dokumenttiin div-elementin avulla." /> <p class="caption"><strong>Kuva 1</strong>. Erillisen navigoinnin määrittäminen.</p> </div>
Merkkitason elementtejä käytetään kappaleen sisäisten rakenteiden merkintään. Tällaisia rakenteita ovat esimerkiksi lyhenteet, määritelmät ja korostukset. Seuraavassa käydään lyhyesti läpi elementit ja niiden rakenteellinen merkitys.
abbr-elementillä merkitään
lyhenteitä, jotka luetaan jokainen kirjain erikseen.
<p> <abbr title="World Wide Web">WWW</abbr> </p>
acronym-elementillä merkitään
lyhenteitä, jotka voidaan lausua sanojen tapaan
(kirjainsanoja).
<p> <acronym title="North Atlantic Treaty Organization">NATO</acronym> </p>
br-elementti aiheuttaa tekstissä pakotetun
rivinvaihdon. Rivinvaihtoa ei saa koskaan käyttää tyhjän tilan tekemiseen, vaan siihen täytyy käyttää CSS-tyylejä. Ainoita paikkoja, joissa pakottua rivinvaihtoa joutuu yleensä käyttämään, on osoite- tai vastaavien tietojen määrittäminen. Esimerkki br-elementin käytöstä löytyy alaluvusta "Sivun tekijän yhteystiedot".
code-elementillä merkitään
ohjelmakoodi. Kaikki tämän luvun HTML-koodit on merkitty code-elementillä.
dfn-elementillä merkitään termien
määrittelyt.
em-elementillä merkitään
korostusta vaativat asiat.
kbd-elementillä merkitään tekstit, jotka käyttäjän pitäisi syöttää.
samp-elementillä merkitään esimerkiksi ohjelmien esimerkkitulosteita.
span-elementti on yleinen merkkitason elementti, jolla voidaan yhdistää merkkitasoisia elementtejä ja luoda merkkitasoisia lohkoja.
strong-elementillä merkitään voimakasta korostusta (vahventamista) kaipaavat asiat.
var-elementillä merkitään muuttujia ja ohjelmien parametreja.
WWW-sivuille tehtävät virheet voivat pahimmillaan estää sivujen katsemisen. Tämän vuoksi on hyvä tietää muutamia yleisiä editorista tai käyttäjästä aiheutuvia virheitä. Joitakin XML:n vaatimuksista aiheutuvia virheitä käsitellään artikkelissa Esteettömän WWW-sivun toteuttaminen. Virheiden olemassaolo on toki helppoa huomata WWW-sivun validoinnin yhteydessä. Virheilmoitukset voivat kuitenkin olla epäselviä.
WWW-sivun rakenteen
määrittelyyn käytettävät elementit
voidaan karkeasti jakaa kahteen osaan. Toiset elementit
vaikuttavat kappaleisiin ja niiden ominaisuuksiin ja toiset taas
kappaleiden sisällä olevan tekstin ominaisuuksiin.
HTML-dokumenttia tehtäessä hyvin tyypillinen virhe on
sijoittaa tekstin rakenteen ilmaisemiseen
käytettävä elementti koskemaan useampaa
kappaletta. Esimerkiksi tuntuu kätevältä muokata
useamman p-elementillä määritellyn
kappaleen tekstejä strong-elementillä.
Näin ei kuitenkaan saa tehdä, vaan halutut muutokset
pitää tehdä strong-elementillä
jokaisen p-elementin sisään. Esimerkkinä käytetään lyhyttä kappaletta, koska laajemman kappaleen koko korostaminen on hieman arveluttava rakenteellinen ratkaisu.
OIKEIN:
<p><strong> Ensimmäinen tekstikappale..</strong ></p><p><strong> Toinen tekstikappale..</strong></p>
VÄÄRIN:
<strong><p> Ensimmäinen tekstikappale..</p><p> Toinen tekstikappale..</p></strong>
Dokumenttityypin määrittelyssä on oltava
tarkkana, koska kirjoitusvirhe voi aiheuttaa helpostikin sata käsittämätöntä virhettä.
Seuraavassa esimerkissä PUBLIC-sanan kirjoitusasun muuttaminen antaa muutaman virheen validaattorissa.
OIKEIN:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
VÄÄRIN:
<!DOCTYPE html Public "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Attribuuttien arvot tulee aina antaa lainausmerkkien sisällä.
OIKEIN:
<a href=”http://appro.mit.jyu.fi/”>Tietotekniikan approbatur</a>
VÄÄRIN:
<a href=http://appro.mit.jyu.fi/>Tietotekniikan approbatur</a>
XHTML 1.1:n mukana poistuu
a-elementistä name-attribuutti,
jonka avulla voitiin tehdä dokumentin sisäisiä
linkin ”hyppykohtia”. name-attribuutin
tilalle on tullut id-attribuutti, jota voidaan
käyttää suoraan kyseisessä elementissä.
Enää ei elementin sisään tarvitse
lisätä erillistä a-elementtiä.
Seuraavassa esimerkissä esitetään sekä uusi
että vanha tapa lyhyesti:
OIKEIN: (uusi)
<h1 id="juttuja">Sekalaisia juttuja</h1>
VÄÄRIN: (vanha)
<h1><a name=”juttuja”>Sekalaisia juttuja</a></h1>
Erikoismerkkejä tarvitaan WWW-sivuilla kohtuullisen harvoin. Kun niitä tarvitsee, voi merkin saaminen näkyviin WWW-sivuilla tuottaa ongelmia. WWW-sivun merkistön tarkka määrittäminen poistaa useimmat merkistöön liittyvät ongelmat. Merkistön määrittämisellä vältytään esimerkiksi skandimerkkien (ä, ö, å) koodaamiselta. Tyypillisin koodattava merkki on &-merkki, koska sitä käytetään merkkienkoodauksen ilmaisimena. Monissa linkkiteksteissä käytetään &-merkkiä linkin mukana vietävien parametrien erottamiseen. Kun tällainen linkki kirjoitetaan WWW-sivulle, on &-merkki koodattava. Myös pienempi kuin ja suurempi kuin -merkit joudutaan koodaamaan, koska niitä käytetään HTML-elementtien ilmaisemiseen.
| Merkki | HTML-koodi |
|---|---|
| & | & |
| < | < |
| > | > |
Taulukko 1. Muutama tarpeellinen erikoismerkki HTML-koodeineen.
Toisinaan myös erikoismerkit tuottavat ongelmia WWW-osoitteissa. WWW-sivuja tehtäessä kannattaa pitääperussääntönä sitä, että skandimerkkejä ja välilyöntejä ei käytetä käytetätiedostojen ja hakemistojen nimissä. Joissakin, erityisesti vanhoissa, selaimissa koodaamaton välilyönti osoitteessa voi estää koko linkin toiminnan. Linkkeihin määriteltävät erikoismerkit poikkeavat WWW-sivuun määriteltävistä erikoismerkeistä siten, että ne annetaan heksadesimaalimuodossa.
| Merkki | Heksades. | Merkki | Heksades. | Merkki | Heksades. |
|---|---|---|---|---|---|
| Välilyönti | %20 | ä | %E4 | ö | %F6 |
| å | %E5 | Ö | %D6 | Ä | %C4 |
| Å | %C5 |
Taulukko 2. Muutama linkkeihin heksadesimaalimuodossa koodattava erikoismerkki.
Tarkemmin erilaisista merkistöistä ja niiden käytöstä voit lukea seuraavista osoitteista:
Jukka Korpela, ” Merkit ja koodaukset”, saatavilla HTML-muodossa osoitteessa <URL: http://www.cs.tut.fi/~jkorpela/merkit/index.html>.
Web Design Group, ”ISO 8859-1 character set overview”, saatavilla HTML-muodossa osoitteessa <URL: http://www.htmlhelp.com/reference/charset/>.
W3C, ”Character entity references in HTML 4”, saatavilla HTML-muodossa osoitteessa <URL: http://www.w3.org/TR/1999/REC-html401-19991224/sgml/entities.html>.
Delco Electronics Corporation, ”ASCII - ISO 8859-1 (Latin-1) Table with HTML Entity Names”, saatavilla HTML-muodossa osoitteessa <URL: http://www.bbsinc.com/iso8859.html.