Veebileht

**Veebileht** on dokument või teabeallikas, mis kõlbab veebi (World Wide Web) jaoks ja millele pääseb ligi ja mis on loetav veebibrauseris. Veebileht on tavaliselt HTML- või XHTML-vormingus ja võib sisaldada hüperlinke, mille abil saab liikuda muudele veebilehtedele, sama veebilehe mõnele osale või muudele andmeobjektidele veebis. Veebilehed hõlmavad sageli muidki teabeallikaid, näiteks laadilehti, skripte ja pilte.

Veebilehele võib pääseda kas kohalikust arvutist või veebiserverist. Veebiserver võib piirata kasutajate ligipääsu, nii et ligi pääseksid vaid privaatsed võrgud, või avaldada lehti avalikus veebis. Veebilehti küsitakse veebserveritelt hüperteksti edastusprotokolli (HTTP) abil.

Lehed võivad koosneda failidest, tekstist ja muudest elementidest, mis on veebiserveri failisüsteemis (staatiline veebileht), või olla konstrueeritud serveripoolse tarkvaraga (programmidega), kui seda on taotletud (dünaamiline veebileht). Kliendipoolne skriptimine (kliendi arvutis käivitatavad programmid) võimaldab kasutaja käskudele veebilehtedel kiiremini reageerida.

## Värv, tüpograafia, illustratsioon ja interaktsioon

Veebilehed sisaldavad tavaliselt teavet teksti värvide ja tausta kohta, tihti ka lõplikus vaates nähtavate piltide ja muud tüüpi meedia linke. Paigutus, tüpograafia ja värviskeemide informatsioon on tagatud laadilehe (inglise keeles: Cascade Style Sheet, CSS) instruktsiooni poolt. CSS võib ka olla HTML-koodi sisse kirjutatud või esitatud eraldi failina, millele viidatakse lehe koodis. Viimane variant on tarvilik olukorras, kus üks suur laadileht mõjutab tervet veebilehte: kuna HTTP töötab nii, et veebibrauser laadib alla laadilehe veebiserverist arvutisse vaid ühe korra ning kasutab selle vahemälus olevat eksemplari terve lehe jaoks. Pildifaile hoitakse veebilehe serveris eraldi failidena, kuid kui HTTP-leht on kord juba avatud ja seega ka veebibrauseriga arvutisse alla laaditud, on suur tõenäosus, et seotud failid, näiteks pildid, päritakse juba vaatamisprotsessi käigus.

HTTP 1.1 veebiserver hoiab veebibrauseriga ühendust seni, kuni kogu vajalik teave on taotletud ja tagatud. Veebibrauser renderdab tavaliselt pildid koos teksti ja muude veebilehe materjalidega.

### Dünaamiline käitumine

Kliendipoolset arvutikoodi nagu JavaScripti või Ajaxit saab tagada kas veebilehe HTML-koodis või nagu CSS-laadilehtedega, eraldi, lingitult allalaadimiseks määratletud HTML-koodis. Need skriptid võivad joosta kliendi arvutis, kui kasutaja seda lubab.

## Veebibrauserid

Veebibrauseril võib olla graafiline kasutajaliides (nt Internet Exploreril, Mozilla Firefoxil, Chrome'il ja Operal) või tekstipõhine kasutajaliides (nt Lynxil või Linksil).

Puuetega veebikasutajad kasutavad tihti abistavad tehnoloogiad ja kohastuvaid strateegiaid, et veebilehti kasutada oma erivajadustele vastavate abivahenditega. Kasutaja võib olla värvipime või ei saa kasutada hiirt mõne vigastuse tõttu, kasutaja võib olla kurt ning tal on tarvis, et heli tema jaoks tekstiks töödeldakse, kasutaja võib olla pime ning vajada abivahendit, mis ekraanil oleva teksti heliks töötleb, või spetsiaalset Braille ekraani.

Nii puuetega kui ka puueteta kasutajad võivad keelata allatõmbamised, piltide ja teiste meediate vaatamise, et säästa aega, võrgu ribalaiust või siis lihtsalt teha enda veebisirvimist kergemaks. Näiteks mobiilsetel seadmetel olevatel kasutajatel on piiratud ekraanisuurus ning ka ribalaius, seega kasutatakse piltide ja muu meedia vaatamise võimaluse keelamist sagedasti. Paljud, kellele ei meeldi ka mingid kindlad kirjastiilid, kirjasuurused või siis värvid, mille veebilehe omanik on valinud, võivad seadetest valida endale sobivad.

World Wide Web Consortium (W3C) ja Web Accessibility Initiative (WAI) soovitavad, et kõik veebilehed oleksid kujundatud just neid võimalusi silmas pidades.

## Elemendid
Veebileht kui informatsioonikogum võib sisaldada mitut tüüpi teavet, mis on lõppkasutajale nähtav-kuuldav.
:**Tajutav** ( renderdatud) informatsioon:
:**tekstiline informatsioon*
:**mittetekstiline informatsioon*
:***staatilised pildid* – rastergraafilised, tüüpiliselt GIF, JPEG või PNG; või siis vektorvormingus nagu SVG või Flash
:***animeeritud pildid* – tüüpiliselt animeeritud GIF- ja SVG-, kuid võib ka olla Flashi, Shockwave'i või Java vormingus.
:**heli – tavaliselt MP3-, OGG- või mõnes muus sobilikus vormingus
:**video – WMV- (Windows), RM- (Real Media), FLV- (Flash Video), MPG-, MOV- (Quicktime) vormingus
:**Interaktiivne informatsioon*:
:**"lehel olev" interaktsioon
:****interaktiivne tekst* (DHTML)
:****interaktiivne illustratsioon*: alates "Vajuta siia, et mängida" piltidest kuni mängudeni, tavaliselt kasutatakse Flashi, Java aplette, SVG-d või Shockwave'i.
:****nupud*: pakuvad alternatiivseid liideseid, tavaliselt kasutatakse nende puhul DHTML-i
:**"lehtedevaheline" interaktsioon
:****hüperlingid*: võimaldavad liikuda ühelt lehelt teisele
:****vormid*: Pakuvad rohkem interaktsiooni serveri ja serverivahelise andmebaasiga		
:**Sisemine** (peidetud) informatsioon:
:**kommentaarid*
:**hüperlinkide* kaudu lingitud failid (nt DOC, XLS, PDF jt)
:**metaandmed* koos semantiliste metaandmetega, märgistiku informatsioon, dokumendi tüübi definitsioon (DTD)
:**diagramation* ja stiili informatsioon: renderdatud esemete ning visuaalsete spetsifikatsioonide informatsioon (CSS)
:**skriptid*, tavaliselt JavaScript, täiendavad interaktiivsust ja funktsionaalsust.

Veebileht võib sisaldada ka dünaamiliselt kohandatud teabe elemente, mis sõltuvad veebibrauserist või lõppkasutaja asukohast. Neid võidakse kasutada IP-aadressi jälitamise kaudu ja/või küpsiste abil.

Üldisemast vaatepunktist, mõne informatsiooni elemendid, näiteks kerimisriba, on standardi järgi samasugused kõikidel lehtedel. Seda tüüpi veebilehe standardset informatsiooni pakuvad vastavad tehnoloogiad, näiteks veebilehemallide süsteem.

## Renderdamine
Veebilehed vajavad tavaliselt rohkem ekraaniruumi, kui kuvari lahutusvõime lubab. Enamik tänapäevaseid veebibrausereid lisab automaatselt kerimisriba, mis lubab kasutajal liikuda veebilehel alla-üles ja vasakule-paremale, et näha kogu lehe sisu. Horisontaalselt kerimine on vähem levinud kui vertikaalselt, mitte ainult selle pärast, et tihti on selliseid lehti halb printida, vaid selle pärast, et horisontaalne kerimine on kasutaja jaoks ebamugavam kui vertikaalne. (Kuna read on horisontaalsed, edasi-tagasi kerimine iga rea pärast oleks ebamugavam, kui kerimine pärast seda kui kogu ekraani ulatuses olev tekst on loetud; ning suuremal osal arvuti klaviatuuridel on klahvid "Lehekülje võrra üles" (*Page Up*) ja "Lehekülje võrra alla" (*Page Down*) ja hiirtel vertikaalne kerimisratas, horisontaalse kerimisrattaga hiiri ei ole just eriti palju)

Kui veebileht on asetatud veebiserveri harilikku kataloogi, muutub see veebisaidiks. Veebisait hõlmab tavaliselt veebilehti, mis on üksteisega lingitud või mõnda muud ühtset meetodit navigeerimiseks. Kõige olulisem leht, mis veebilehel olema peab on esileht. (index page)

Olenevalt veebiserveri sätetest võib esilehel on palju erinevaid nimetusi, kuid kõige levinum on index.html. Kui veebibrauseri abil vaadatakse veebisaidi avalehte või ükskõik millist URL-i, mis suunab edasi mingisse kausta, mitte kindlale failile, siis annab veebiserver veebibrauserile ette avalehe. Kui avalehte pole konfiguratsioonis määratud või sellist faili pole olemas, kuvatakse kasutajale veebibrauseris veateade või kausta sisu.

Veebileht võib koosneda kas ühest või mitmest HTML-failist, kasutades paneele või serveripoolseid lisasid (Server Side Includes). Paneelid on tuntud selle poolest, et tekitavad probleeme veebile ligipääsemisega, autoriõigustega, navigeerimisega, printimisega ja otsingumootori edetabelitega, tänapäeval kasutatakse paneele vähem kui 1990. aastatel.

Paneelid ja SSI võimaldavad kasutada teatud sisu, mis on kuvatud paljudel lehtedel (näiteks navigeerimisel, päises), korrata ilma HTML-koodi duplitseerimiseta paljudes failides. W3C soovitab kasutada 2000. aasta alternatiivi,  märgist, mis samuti lubab osal sisul jääda paigale ning teist samal ajal navigeerimisribaga liigutada. Tänapäeva CSS-i ja JavaScripti kliendipoolse tehnoloogiaga on samuti sellised asjad võimalikud.

Veebilehte tehes tuleks silmas pidada W3C loodud HTML, CSS, XML ja teisi standardeid. W3C standardid on loodud selle jaoks, et kõik veebibrauserid saaksid veebisaite kuvada identselt, ilma et peaks kasutama mingeid erilisi renderdamistehnikaid. Korralikult kirjutatud veebilehte on võimalik korralikult vaadata mitut tüüpi veebibrauserites, nii nende uutes kui ka vanades versioonides, sõltumata kuvari lahutusvõimest. Paljudes veebibrauserites on lisavõimalused ka kuulmis- kui ka nägemispuudega inimestele.

## URL

Tänapäeva veebilehed muutuvad aina enam dünaamiliseks. Dünaamiline veebileht tehakse valmis serveri poolt, kui seda nõutakse ning seejärel antakse kätte lõppkasutajale.  Tänapäeval on seda näha paljudes populaarsetes foorumites, online poodides ning isegi Vikipeedias.  Osadel otsingumootoritel tekib raskusi dünaamiliste veebilehtede leidmisega, siis on soovitatav ka lisada staatiline veebileht.

## Vaatamine

Veebilehe graafiliseks esitamiseks on vaja veebibrauserit (GUI-keskkonnas). See on tarkvara, mis teeb veebilehe tavakasutaja jaoks saadavaks. Enamikus tänapäevastest veebibrauseritest saab vaadata ka veebilehe lähtekoodi. Lähtekoodi on võimalik vaadata ka allalaaditud veebilehe avamisel tekstiredaktoriga.

## Valmistamine
Veebilehe valmistamiseks kasutatakse kas HTML-i redaktorit või tavalist tekstiredaktorit. Lehe veebiserverisse laadimiseks kasutatakse tavaliselt FTP-klientrakendust.

Veebilehe disain on igaühe enda teha, kasutada võib ka valmis veebilehemalle. Mallid võimaldavad kujundajal muuta veebilehe sisu ilma, et ta peaks muretsema lehe üleüldise esteetika pärast. Paljud inimesed avaldavad oma veebilehti kasutades tooteid nagu Tripod või Angelfire. Nende vahenditega saab igaüks teha tasuta kodulehe ning hoiustada seda internetis.

On ka teisi võimalusi veebilehe tegemiseks, võib paigaldada tarkvara, nagu näiteks Wiki, sisuhaldustarkvara või forum, mis aitavad kasutajal kiiresti ning hõlpsasti "valmistada" "dünaamilise veebilehe". Tänapäeval kõige populaarsem platvorm veebilehe loomiseks on WordPress, seda kahel põhjusel. Esiteks on WordPress põhimõtteliselt tasuta, kui sa just ei soovi hankida lisapluginaid. Teiseks on WordPressile loodud sadu tuhandeid lisapluginaid.

## Salvestamine
Veebilehe sirvimisel salvestatakse see automaatselt arvutisse. Sõltuvalt veebibrauseri seadetest salvestatakse veebileht kasutaja arvutisse määramata ajaks, mõnikord isegi kasutaja teadmata. Selle eksemplari saab arvutist eemaldada igal ajal. Enamik graafilise kasutajaliidesega veebibrausereist võimaldab salvestada veebilehti arvutisse jäädavalt.

Salvestamisvõimalusi:
*Salvestada renderdatud tekst vormingu ja piltideta, hüperlingid muudetakse tavaliseks tekstiks.
*Salvestada HTML kood nii nagu antud – üldine struktuur jääb samaks, kuid mõni link võib katkeda.
*Salvestada HTML-kood, nii et suhtelised lingid muudetakse absoluutseteks linkideks, tänu sellele säilivad ka hüperlingid.
*Salvestada kogu veebileht – kõik pildid ja teised vahendid, sealhulgas ka laadilehed ja skriptid laaditakse alla ning salvestatakse uude kausta koos HTML-koodiga ning linkidega, mis viitavad arvutis olevatele salvestatud lehtedele. Teised suhtelised lingid muudetakse absoluutseteks linkideks.
*Salvestada HTML-kood koos piltide ja teiste vahenditega ühte ainsasse MHTML-faili. Sellist salvestamise võimalust pakuvad vaikimisi vaid Internet Explorer ja Opera. Ka on võimalik sellist salvestamise viisi kasutada muude veebibrauseritega, kuid selleks on vaja installida vajalik lisandmoodul.
Enamik operatsioonisüsteeme lubab rakendusprogrammidel, näiteks veebibrauseritel, mitte ainult välja printida veebilehte, vaid ka printida failiks, mida saab hiljem vaadata või välja printida. Kasutades laadilehti, on mõningad veebilehed juba kujundatud nii, et kõik hüperlingid, menüüd ja muud navigeerimisobjektid, mis on paberil kasutud, on kas eemaldatud või siis lisatakse prinditava lehe kehasse või lõppu.

## Vaata ka
*Veebisait
*Veebiserver
*Koduleht
*Veeb
*Veebibrauser

## Viited

## Välislingid

* The W3C Markup Validation Service