Tuntuuko XHTML-elementtejä olevan liikaa? Etkö löydä esimääsi peruselementtiä mistään? Katso lista tärkeimmistä XHTML-elementeistä.
Lyhyesti sanottuna: XHTML on kieli, jolla tehdään Internet-sivuja.
XHTML kertoo selaimelle, mitä sivulla on. Sivulla olevat erityyppiset sisällöt merkitään tagien avulla. Esimerkiksi pääotsikko merkitään alkavaksi kirjoittamalla <h1> ja loppuvaksi merkinnällä </h1>. Otsikon teksti tulee näiden merkintöjen väliin:
<h1>Tämä on sivun pääotsikko</h1>
Samalla tavalla esimerkiksi tekstikappale merkitään merkintöjen <p> ja </p> väliin.
Näiden merkintöjen eli tagien avulla selain erottaa, mikä osa sivusta on leipätekstiä ja mikä otsikkoa, mitä tulee korostaa, missä kulkee rivinvaihto tai viiva ja niin edelleen.
XHTML:llä siis määritetään sivun rakenne. Otsikkotagien sisällä on otsikko, tekstikappaletagin sisällä tekstikappale, listatagin sisällä lista ja niin edelleen.
XHTML:n avulla ei kuitenkaan määritellä sivun ulkoasua. Värit, taustakuvat, reunukset ja kaikki muu ulkoasuun liittyvä muotoilu suoritetaan CSS:llä.
XHTML:ää on usein pidetty HTML-kielen seuraajana. Tämän vuoksi HTML:ää ei ole enää suositeltu käytettäväksi: XHTML 1 on HTML:n uusinta eli 4. versiota uudempi. Monet HTML:n elementit ovat lisäksi nykyään epäsuositeltavia, sillä ne vaikuttavat sivun ulkoasuun. Nykyään sivun ulkoasun muotoilu suositellaan tehtäväksi CSS:llä.
HTML:ää käytetään yhä melko paljon lähinnä siksi, että se on yhteensopiva myös vanhojen selainten kanssa. Lisäksi Internet Explorer, yksi suosituimmista Internet-selaimista, ei tue XHTML:ää kunnolla. Tämä on yleensä kierretty ilmoittamalla XHTML-sivujen mime-tyypiksi text/html. Tämä onnistuu kuitenkin vain XHTML:n versiossa 1.0.
Sittemmin HTML:stä on alettu kehittää 5. versiota. Suurin osa uusista Internet-sivuista käyttää kuitenkin nykyään XHTML:ää.
XHTML:llä ja HTML:llä on paljon eroja, vaikka perusrakenne ja suuri osa koodista onkin samaa. Erot on kuitenkin hyvä tietää, ettei käytä näitä kahta kieltä sekaisin.
HTML: <p>Tässä on tekstikappale. <br> XHTML: <p>Tässä on tekstikappale.</p> <br />
HTML: <BLOCKQUOTE>Lainaus.</BlockQuote> XHTML: <blockquote>Lainaus.</blockquote>
HTML: <p class=mansikka> XHTML: <p class="mansikka">
HTML: <select size="3" multiple> XHTML: <select size="3" multiple="multiple">
Kun XHTML:llä määritetään sivun rakenne, CSS:llä muotoillaan ulkoasu. Esimerkiksi tekstikappaleille saa CSS:n avulla määritettyä vaikkapa reunuksia, taustavärejä, marginaaleja, fontin kokoja ja niin edelleen. Koko sivuston ulkoasu määritetään siis käytännössä CSS:n avulla: XHTML:llä ei voi määrittää mitään värejä tai muotoiluja.
Englanniksi tag, käytetään joskus suomeksi myös nimitystä tägi. Tagi on kuitenkin yleisempi.
Tagit kertovat selaimelle, mitä niiden sisällä oleva teksti / sisältö on. Näin selain osaa näyttää sivun oikein.
Tagit ovat hakasulkujen sisällä olevia sanoja (joista suurin osa on suoraa englantia tai englannin lyhenteitä). Aloitustagi on tyyppiä <tagi> ja päättötagi tyyppiä </tagi>, ja tagien sisältö tulee näiden kahden hakasulkuvirityksen väliin.
Esimerkkejä (vihreällä merkityt ovat tageja):
<h1>H1 on otsikkotagi.</h1> <p>P on kappalejakotagi.</p> <textarea>Textarea-tagi aiheuttaa tekstikentän.</textarea>
On myös tageja, joilla ei ole varsinaista päättötagia, kuten rivinvaihto br ja kuva img. Tällöin tagi päätellään itsensä sisällä lisäämällä välilyönti ja /-viiva ennen viimeistä hakasulkua:
<br />
Käytetään myös nimitystä XHTML-elementti.
Elementti tarkoittaa yhden tagin ja sen päättötagin muodostamaa kokonaisuutta. Elementin sisältö tarkoittaa tagien välissä olevaa sisältöä.
Alla on esimerkki pre-elementistä.
<pre>Elementin sisältö.</pre>
Tagit ja elementit voivat olla toistensa sisällä. Esimerkiksi alla olevassa esimerkissä p-elementti (ja siis myös p-tagit) ovat div-elementin (ja div-tagien) sisällä.
<div><p>Kappale.</p></div>
Attribuutilla tarkoitetaan aloitustagin osaa, jossa tarkennetaan tagin merkitystä, sisältöä ja ominaisuuksia. Attribuutilla voidaan esimerkiksi ilmoittaa lainauksen lähde, sijoittaa elementti johonkin CSS-luokkaan, antaa sille yksilöllinen tunniste (id) tai vaikkapa ilmoittaa linkin tai kuvan osoite.
Itse attribuutti erotetaan tagin aloituksesta välilyönnillä. Lainausmerkkien sisällä olevaa attribuutin osaa kutsutaan attribuutin arvoksi.
Teoriassa siis näin:
<tagi attribuutti="attribuutin arvo">
Toimivia esimerkkejä:
<p class="mansikka">Hei!</p> <img src="http://www.mansikka.man/yksi.jpg" /> <blockquote cite="Matti Meikäläinen">...</blockquote>
Yhdellä tagilla voi olla myös useampia attribuutteja, mutta ei samaa attribuuttia kahta kertaa:
<p class="mansikka" id="huuhaa" alt="Heipä hei!">Hei!</p>
Class-attribuutilla voi lisäksi olla useampia arvoja (elementti voi kuulua useaan luokkaan):
<p class="mansikka huuhaa">Hei!</p>
Huomaathan, että yksi id voi esiintyä yhdellä sivulla vain kerran, sillä kyseessä on yksilöllinen tunniste, joka yksilöi elementin. Et siis voi laittaa samalle sivulle kahta elementtiä, joissa molemmissa on attribuutti id="mansikka". Sen sijaan voit käyttää toisessa attribuuttia id="mansikka" ja toisessa attribuuttia id="mansikka2″.
Mikäli haluat liittää esimerkiksi samat CSS-muotoilut useampaan elementtiin, voit liittää ne samaan luokkaan. Class-attribuutilla saa olla vaikka tuhat samaa arvoa sivulla, se vain liittää elementit samaan luokkaan keskenään eikä yksilöi mitään.
Dokumenttityyppi on www-sivun koodissa ensimmäiselle riville sijoitettu tekstinpätkä, joka kertoo selaimelle, mitä XHTML:n versiota ja muunnosta sivu käyttää. Lisätietoa sivulla sivun perusrakenne.
Selain (engl. browser) tarkoittaa ohjelmaa, jolla selataan Internet-sivuja. Selaimet tulkitsevat HTML- ja CSS-koodeja hieman eri tavoin, joten kotisivut näkyvät niillä hieman erilaisina. Etenkin Internet Explorerilla on tapana tulkita koodia päin puskia. Tämän vuoksi omien kotisivujensa toimivuus kannattaa tarkistaa ainakin yleisimmillä selaimilla.
Alla on lueteltu yleisimpiä selaimia.
Lähdekoodi (englanniksi source) tarkoittaa kotisivujen sitä koodin osaa, jonka vierailijat voivat nähdä selaimensa avulla. Sivun lähdekoodin saa näkyviin ottamalla selaimen ylävalikosta "Näytä" > "Sivun lähdekoodi" (Firefox) tai "Näytä" > "Lähdekoodi" (Internet Explorer, Opera).
Käytännössä kaikki sivuilla oleva CSS ja XHTML/HTML näkyy lähdekoodissa, samoin javascript. Php, perl ja muut palvelimella suoritettavat ohjelmointikielet siellä eivät sen sijaan näy.
XHTML:ssä tageja ei voi päätellä mielivaltaisesti. Ne tulee päätellä päinvastaisessa järjestyksessä kuin ne on aloitettu:
Oikein:
<div><span>Hei.</span></div>
Väärin:
<div><span>Hei.</div></span>
Toisin sanoen eri tagien tulee alkaa ja päättyä siististi toistensa sisällä:
<body> <div> <span> Hei! </span> </div> </body>