Uvod u XHTML (v1.2 - MART 2010)

00 Potrebni programi

Za vežbe iz HTML-a potrebno nam je nekoliko (besplatnih) programa.

Pre svega, potreban nam je tekst editor. Iako može poslužiti bilo koji (čak i običan Notepad), bolje je ako koristimo neki koji bojom ističe različite oznake unutar dokumenta i koji ima podršku za Unicode, odnosno UTF-8 (drugim rečima za latinicu i ћирилицу). Jedan od takvih programa je PsPad 4.5.3.

Za kreiranje kaskadnih stilova (CSS), poslužiće nam TopStyle Lite 3.1

Konačno, za pregled dokumenata, poslužiće nam bilo koji Web browser, poput npr. Mozilla Firefox-a.

VAŽNO:

Program PsPad nas na početku može zbuniti svojim izgledom. Za početak bismo mogli da isključimo neke od opcija koje nećemo koristiti.
  1. U meniju View - isključujemo Tool Panel
  2. View - Toolbars - isključujemo Project, Look, Control i Macro
  3. View - uključujemo Line Numbers

01 HTML oznake

Suštinski posmatrano, HTML fajl je tekstualni dokument. Sam standard je relativno jednostavan za učenje i razumevanje, tako da je HTML stranicu moguće kreirati i u običnom tekst editoru. Naravno, postoji i veliki broj besplatnih ili komercijalnih programa namenjenih da proces kreiranja Internet prezentacije učine što više intuitivnim.

HTML kod prvenstveno služi za formatiranje teksta. Naredbe HTML-a se nazivaju "oznakama" ("tags"). Uz nekoliko izuzetaka, svaka oznaka ima početak i kraj, kao i tekst koji se nalazi između ta dva i koji će biti formatiran onako kako je zadato u toj oznaci. Oznake takođe mogu biti hijerarhijski struktuirane, što znači da se unutar njih mogu naći pod-oznake.

Uopšteno, oznaka ima sledeću strukturu:
<OZNAKA> tekst </OZNAKA>

Na primer, oznaka "<b>" se koristi ako je potrebno da jedan deo teksta bude ispisan podebljanim slovima. U HTML fajlu:
Tekst koji sledi je <b>vrlo važan</b> i morate ga pažljivo čitati.

Na ekranu, kako ga tumači web čitač:

Tekst koji sledi je vrlo važan i morate ga pažljivo čitati.

Ovakve oznake su najjednostavnije i ima ih relativno malo. Najčešće su one oznake koje imaju i neke dodatne atribute (parametre). Atributi se zadaju u prvom (otvarajućem) delu oznake, u obliku:
naziv_param = "vrednost"

Tako bi oznaka sa parameterima imala izgled:
<OZNAKA param1="vrednost" param2="vrednost" ...> tekst </OZNAKA>

Na primer, oznaka kojom se određuje način ispisa teksta u sebi može sadržati parametre za font, veličinu i boju slova:
Ovo je <font face="Arial" color="#000099" size="+1"> drugačiji </font> tekst.

U web čitaču izgleda ovako:

Ovo je drugačiji tekst.

VAŽNO:
Prema XHTML standardu oznaka FONT je zastarela i više se ne koristi.

Postoji i posebna vrsta oznaka, koji nemaju deo za zatvaranje, odnosno koji ne mogu da obuhvate tekst i druge oznake.

Jednostruke oznake imaju posebnu sintaksu:
<OZNAKA />

Odnosno:
<OZNAKA param1="vred" param2="vred"... />

Takva je na primer oznaka koja nalaže web čitaču da na određeno mesto ubaci sliku ili oznaka kojom se zadaje prelazak u novi red (web čitač, inače sam vrši prelom teksta u sledeći red, kada tekst premaši širinu prozora).
Ovo je <br /> prelom linije.

Dobijamo ovakav rezultat:

Ovo je
prelom linije.

Novi redovi, kao i uzastopni razmaci u HTML fajlu se ignorišu od strane web čitača. Ako je u HTML fajlu zadato:

Ovo je
i dalje       jedna linija.

U web čitaču to izgleda ovako:

Ovo je i dalje jedna linija.

Zbog toga koristimo oznaku za prelazak u novi red ili specijalne markere kao što su "&nbsp;" za razmak, "&lt;" za znak manje, "&gt;" za znak veće, "&amp;" za ampersend.

VAŽNO:
Da bi se HTML približio XML-u, uveden je novi, striktniji standard - XHTML. Razlike između HTML 4.01 i XHTML 1.0 standarda:
  • oznake uvek moraju biti zatvorene - npr: za svaku <oznaku> mora postojati i </oznaka> da je zatvori; ako je u pitanju jednostruka oznaka, onda je pravilno <oznaka />
  • oznake moraju biti pravilno ugnježdene - npr: pravilno je <t1><t2>...</t2></t1> umesto <t1><t2>...</t1></t2>
  • oznake se uvek pišu malim slovima - npr: pravilno je <oznaka param="..."> umesto <OZNAKA PARAM="...">
  • XHTML dokumenti su uvek smešteni unutar jednog glavnog elementa - u praksi to je <html>...</html>

Ne moraju biti navedeni svi atributi (parametri) koje oznaka može imati. Takođe, atributi ne moraju da se navode po redosledu.

02 Struktura HTML dokumenta

Postoje i oznake koje ne služe za formatiranje sadržaja, već određuju odeljke same HTML stranice. Po tome, HTML dokument ima sledeću strukturu:

<!DOCTYPE...>
<html>
<head>
... zaglavlje dokumenta
</head>
<body>
... tekst dokumenta
</body>
</html>

U delu za zaglavlje se nalaze informacije o samoj stranici - ko je autor, u kom programu je stranica kreirana, koja kodna strana se koristi, ključne reči, naziv stranice i slično.

U glavnom delu se nalazi sam sadržaj stranice, tj. tekst, slike, tabele, forme itd. Sve oznake koje su ovde opisane upotrebljavaju se u ovom delu.

Dokument obično počinje linijom koja definiše tip dokumenta. Primeri ovih linija se mogu pronaći u W3C specifikacijama, a primer linije koja definiše standardni (striktno) XHTML dokument bi bila:

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

03 Fajlovi

Web stranice imaju ekstenziju .htm ili .html. Postoje i posebni tipovi web dokumenata koji imaju drugačije ekstenzije (.php, .asp, .jsp, .js, itd.). Slike se ne snimaju unutar dokumenta već su izdvojene u zasebne fajlove.

Početna strana sajta gotovo uvek treba da se zove index.html (ili ređe default.html), što saznajemo od web provajdera kod koga postavljamo sajt.

Dobra ideja je da se fajlovi snimaju sa imenima koja se sastoje samo iz malih slova engleske abecede i cifara. LINUX serveri razlikuju mala i velika slova, što znači da lako možemo da pogrešimo u linkovima do fajlova.

04 Komentari

Na bilo kom mestu unutar HTML dokumenta je moguće postaviti komentar. Komentari se obično koriste da bolje objasne HTML tekst, što pomaže kod kasnijeg menjanja. Tekst komentara se neće videti na stranici.
<!-- Tekst komentara -->

Primer komentara:
<!-- Ovo je komentar -->

05 Oznake zaglavlja

Unutar zaglavlja HTML dokumenta je moguće koristiti nekoliko specifičnih oznaka.

Oznaka TITLE služi za definisanje naslova stranice koji se pojavljuje u title bar-u web čitača.
<title>Uvod u HTML</title>

META oznaka ima višestruku primenu. Jedna od najvažnijih je za određivanje kodnog rasporeda. U sledećem primeru vidimo kako se definiše UNICODE UTF-8 raspored koji podržava srpsku latinicu i ćirilicu.
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

Pomoću META taga možemo definisati ključne reči koje opisuju stranicu i koje pretraživači uzimaju u obzir pri indeksiranju.
<meta name="keywords" content="HTML, XHTML, stilovi, uvod, turisticka, skola" />

Postoje i druge primene oznake META, ali one neće ovde biti objašnjene.

Pošto se za formatiranje HTML dokumenta prema W3C standardu koriste CSS stilovi, ovde ćemo pokazati način da se na stranici iskoriste stilovi definisani u posebnom fajlu. Stilove je moguće definisati i u okviru same stranice, ali ćemo zbog preglednosti i mogućnosti da ponovo koristimo iste stilove, taj pristup ovde zanemariti.

<style type="text/css" media="all">
@import "fajl1.css";
@import "fajl2.css";
...
</style>

Unutar HTML dokumenta i unutar zaglavlja se mogu umetati naredbe pisane u JavaScript jeziku. JavaScript je programski jezik pomoću koga je moguće dinamizirati izgled stranice (npr. padajući meniji, dugmići koji se "uključuju" kada pređemo mišem preko njih i sl.)

<script type="text/javascript">
...naredbe JavaScript jezika
</script>

06 Atributi stila

Prema W3C (WWW Consortium) XHTML standardu, razdvajaju se sadržina (definisana tekstom i HTML oznakama) i formatiranje, odnosno izgled (definisan stilovima).

U HTML-u postoji nekoliko atributa (parametara) koji su standardni za skoro sve oznake. Među njima su možda najvažniji atributi stila kojima se precizno definiše formatiranje (izgled) teksta koji oznaka obuhvata.

U sledećem primeru obeležavamo link kao "prvi_link" (atribut id), zadajemo mu unapred definisan stil "primer" (preko atributa class) kojim se određuje veličina i boja slova, pozadina, kurziv i sl., a pomoću atributa style specijalno za ovaj link zadajemo stil ispisa bez donje linije.
<a href="http://www.visokaturisticka.edu.rs" id="prvi_link" class="primer" style="text-decoration: none;"> Visoka turistička škola </a>

Visoka turistička škola

NAPOMENA:
Oznaka <a> služi za kreiranje linkova ka drugim stranama ili sajtovima. Detaljnije će biti objašnjena u odeljku Linkovi.

07 Atributi događaja

O atributima događaja ćemo više govoriti u delu koji se bavi jezikom JavaScript. Za sada je bitno da znamo da za određene oznake postoje i specijalni atributi kojima se definiše reagovanje na određeni događaj. Ovi događaji mogu biti:

U primeru je prikazano kako koristimo JavaScript da promenimo boju elementa. Pre svega zadali smo atribut class kojim zadajemo stil "primer" (zeleni tekst, kao u prethodnom odeljku). Atributom id zadali smo naziv ovog elementa "test", koji bi trebao da bude jednistven na celoj HTML stranici. Atribut onmouseover definiše da se, kada korisnik pređe mišem preko elementa, poziva unapred definisana JavaScript funkcija "promenaBoje()" koja će izmeniti neke od elemenata stila (boju pozadine i teksta). Sa druge strane, atribut onmouseout definiše da se, kada korisnik pomeri miš van ovog elementa, poziva JavaScript funkcija "vratiBoju()".
<span class="primer" id="proba" onmouseover="promenaBoje();" onmouseout="vratiBoju();"> Pređite mišem preko ovog teksta </span>

Pređite mišem preko ovog teksta

NAPOMENA:
promenaBoje() i vratiBoju() su funkcije kreirane u JavaScript-u, skript jeziku koji se koristi za dinamiziranje sadržaja HTML stranice. Dok ne naučimo osnove JavaScripta, koristićemo unapred pripremljene funkcije.
Oznaka SPAN će biti objašnjen u odeljku Oznake za formatiranje teksta.

08 Oznake za formatiranje teksta

U ovom odeljku ćemo objasniti nekoliko najkorišćenijih oznaka za formatiranje. Neke od ovih oznaka imaju i prateće parametre koji preciznije definišu izgled teksta, ali ti atributi su prema W3C standardu zastareli i preporuka je da se za formatiranje koriste stilovi. Podrazumeva se da ovi tagovi imaju standardne atribute.

<p> služi za obeležavanje pasusa teksta
<p> Tekst pasusa </p>

<br> je jednostruka oznaka koja služi za prelazak u sledeći red
<br />

<h1>..<h6> oznake služe za obeležavanje naslova. Pri tom se <h1> koristi za glavne naslove, <h2> za podnaslove, <h2> za pod-podnaslove, itd.
<h1> Naslov </h1>

<b> se koristi za obeležavanje podebljanog (bold) teksta.
<b> Podebljani tekst </b>

<i> se koristi za obeležavanje kurzivnog (italic) teksta.
<i> Kurzivni tekst </i>

<tt> se koristi za obeležavanje teksta ispisanog fontom fiksne širine (monospace, Courier font).
<tt> Monospace tekst </tt>

<sup> i <sub> oznake se koriste za obeležavanje teksta koji će biti ispisan u eksponentu odnosno indeksu.
<sup> Eksponent </sup>, <sub> Indeks </sub>

<hr> je jednostruka oznaka koja prikazuje horizontalnu liniju
<hr />

<div> definiše blok unutar HTML dokumenta. Ova oznaka se uglavnom koristi za pozicioniranje i grupisanje delova unutar stranice. Sam po sebi, ova oznaka neće proizvesti skoro nikakav efekat, upravo zbog toga ima veliku upotrebnu vrednost pošto se može potpuno kontrolisati upotrebom stilova.
<div> Elementi bloka </div>

<span> je slična <div> oznaci, s tim što se koristi za obeležavanje dela teksta. Sam po sebi takođe ne proizvodi nikakav efekat, sve dok se ne upotrebi u kombinaciji sa nekim stilom.
<span> Obeleženi tekst </span>

U primeru koji sledi iskoristićemo sve prikazane oznake.

<h3>PRIMER</h3>

<p>Ovo je primer koji prikazuje <b>podebljan</b>, <i>kurzivan</i>, <tt>tekst <b>fiksne</b> širine</tt>, kao i upotrebu ostalih HTML oznaka.</p>

<p>Tekst je moguće ispisati u <b>eksponentu</b>, kao npr. za vreme <b>12<sup>00</sup></b> ili <br />u <b>indeksu</b>, kao npr. za formulu <b>X<sub>i</sub> = X<sub>i-1</sub> + 1</b>.</p>

<hr />

<p>Ukoliko je nešto potrebno posebno naglasiti unutar teksta, <span class="primer">možemo iskoristiti oznaku SPAN</span>.</p>

<div class="vazno">Da bi posebno formatirali <b>čitave delove dokumenta</b> ili im promenili poziciju prikaza, možemo koristiti oznaku DIV koja će kreirati zaseban blok.</div>

PRIMER

Ovo je primer koji prikazuje podebljan, kurzivan, tekst fiksne širine, kao i upotrebu ostalih HTML oznaka.

Tekst je moguće ispisati u eksponentu, kao npr. za vreme 1200 ili
u indeksu, kao npr. za formulu Xi = Xi-1 + 1.


Ukoliko je nešto potrebno posebno naglasiti unutar teksta, možemo iskoristiti oznaku SPAN.

Da bi posebno formatirali čitave delove dokumenta ili im promenili poziciju prikaza, možemo koristiti oznaku DIV koja će kreirati zaseban blok.

09 Linkovi

Jedna od najvažnijih karakteristika Web dokumenata je što su oni predstavljeni ne običnim tekstom, već tzv. "hipertekstom". Hipertekst je tekst u kome su određene reči, rečenice ili pojmovi drugačije ispisani (npr. drugom bojom) i što služe kao tzv. "likovi", odnosno veze sa drugim stranicama koje su vezane za te pojmove.

Te stranice mogu biti deo iste prezentacije, a mogu biti i na sasvim drugim Internet sajtovima.

Apsolutni link se obično koristi kada želimo da pristupimo stranici na drugom sajtu. URL (Uniform Resource Locator) uvek počinje sa "http://" iza koga se navodi sam naziv sajta i putanja do stranice. Primer: http://www.visokaturisticka.edu.rs/info/vest154.html

Relativni link se uvek odnosi na neku stranicu unutar sajta. Ako je stranica u istom folderu, može se navesti samo naziv te stranice, kao npr: strana.html

Ako se stranica nalazi u nekom podfolderu, navodi se putanja od stranice sa linkom do tražene stranice. Npr: dokumenti/vazno/strana.html

Ako se strana nalazi u nadfolderu, taj folder se obeležava kao "..", npr: ../docs/strana.html

Ponekad je zamorno navoditi nadfoldere i podfoldere, pogotovu ako želimo da koristimo isti link na više različitih strana. Tada možemo korisiti apsolutne linkove, kao npr: http://www.nassajt.com/docs/strana.html ili samo /docs/strana.html (kada link počinje kosom crtom, uvek se odnosi na osnovni folder sajta)

Ako želimo da link služi za pisanje e-maila, možemo ga navesti kao npr: mailto:ime@adresa.com

Linkovi ne moraju uvek da vode na HTML fajlove, već i na slike, PDF dokumente i sl. Ukoliko browser ne može da otvori fajl, ponudiće posetiocu da ga snimi na svoj računar.

NAPOMENA:

Unutar linkova često viđamo i posebne oznake kao procenat, tarabu, znak pitanja ili ampersend. Procenat se navodi kada u nazivu linka postoje i znaci koji ne spadaju u slova engleske abecede. Tada se svaki specijalni znak obeležava % i svojom heksadekadnom vrednošću. Na primer - česta je pojava znaka za razmak, koji ima ASCII vrednost 32, odnosno kao hex vrednost %20.

Taraba, ili znak # označava link na tačno određeno mesto unutar HTML stranice.

Znakovi ampersend & i znak pitanja ? se koriste za prenos podataka na server i o njima će biti više reči kada se budu obrađivale web forme.

Za linkove se koristi oznaka <a>, koja u svom najjednostavnijem obliku izgleda kao:
<a href="URL"> Tekst linka </a>

Na primer:
<a href="http://www.w3schools.com/default.asp">W3Schools Online Web Tutorials</a>

Što u dokumentu izgleda kao link:

W3Schools Online Web Tutorials

Ova oznaka ima i jednu posebnu mogućnost. Ukoliko se navede atribut "name", na tom mestu će biti obeležen tzv. bookmark, odnosno mesto unutar stranice koje može da se referencira linkom.
<a name="naziv" />

Na primer, bookmark:
<a name="pocetak" />

Može se pozvati linkovima
<a href="#pocetak"> Početak strane </a>, ako je link na istoj stranici, odnosno
<a href="index.html#pocetak"> Početak strane </a>, ako se poziva bookmark sa druge stranice.

Početak strane

0A Boje

Svaka boja na računaru se dobija kao kombinacija tri komponente: crvene (R), zelene(G) i plave (B). Da bi se neka boja u potpunosti odredila, potrebno je odrediti nivo svake od ovih komponenti.

Uobičajeno, nivo svake komponente zauzima vrednost jednog bajta, odnosno od 0 do 255.

Boja se navodi posle znaka "taraba" (#) koji slede heksadekadne oznake za R, G i B vrednosti.

U heksadekadnom zapisu vrednosti od 0 do 255 su vrednosti od 00 do FF.

Tako bi najcrvenija crvena boja imala zapis  #FF0000 , najintenzivnija zelena bi bila  #00FF00 , a najplavlja plava  #0000FF . Crna boja je  #000000 , a bela  #FFFFFF . Neka od nijansi sive bi bila boja kojoj su sve tri komponente jednake, kao npr.  #808080 .

0B Liste

U HTML-u je moguće kreirati dve vrste lista - neuređenu listu i numerisanu listu. Neuređena lista (bullets) se obeležava oznakama
<ul> ...stavke liste... </ul>
a numerisana lista oznakama
<ol> ...stavke numerisane liste... </ol>

Same stavke unutar bilo koje od ove dve liste se navode unutar oznaka
<li> pojedinačna stavka </li>

Primer za neuređenu listu bi bio:

<ul>
<li> Prva </li>
<li> Druga </li>
<li> Treća </li>
</ul>

Primer numerisane liste:

<ol>
<li> Prva </li>
<li> Druga </li>
<li> Treća </li>
</ol>
  1. Prva
  2. Druga
  3. Treća

0C Grafika

Unutar HTML fajla se mogu prikazivati slike. Slike su date kao zasebni fajlovi i pozivaju se preko URL-a koji vodi do slike, što znači da prikazana slika čak i ne mora da bude na istom sajtu.

Da bi se slika prikazala koristi se jednostruka <img> oznaka:
<img src="putanja do slike" alt="alternativni tekst" width="sirina slike" height="visina slike" />

Kao što se vidi, ova oznaka ima nekoliko atributa koje možemo koristiti:

Primer za prikaz slike:
<img src="adorable.gif" alt="Mali meda" width="100" height="92" />

Mali meda

NAPOMENA:
Slike su obično u JPG ili GIF formatu. Iako mnogi web čitači danas prepoznaju i druge formate slika, ova dva formata se koriste tradicionalno na Internetu.

0D Tabele

Tabele su do nedavno predstavljale jedan od najboljih HTML alata za formatiranje sadržaja stranice. Danas to više nije slučaj, pošto se pokazalo da su stranice komponovane pomoću tabela teške za održavanje. Ipak, i dalje imaju svoju upotrebnu vrednost za prikaz tabelarnih podataka.

HTML tabele su vrlo fleksibilne - pojedine ćelije se mogu protezati na više redova i kolona, tako da je u krajnjoj liniji moguće ostvariti bilo kakav kompozicijski zahtev. Kada se dođe do granice mogućnosti tabele, uvek je moguće smestiti novu tabelu unutar ćelije već postojeće tabele.

Svaka tabela se sastoji iz redova i kolona, s tim što je, zbog prirode HTML-a, njena struktura hijerarhijski organizovana. Tabela sadrži redove, dok redovi sadrže ćelije. Nije neophodno navesti koliko ima redova, odnosno ćelija, i time se omogućava fleksibilnost tabela.

Oznaka kojom se označava tabela je <table>, unutar nje se nalazi jedan ili više redova označenih kao <tr>, unutar kojih se nalazi nekoliko (ne obavezno isti broj) ćelija koje su označene kao <td>. Sadržaj ćelija tabele se uvek mora nalaziti u <td> odeljcima. Dakle struktura tabele bi izgledala ovako:

<table>
<tr>
<td> tekst </td>
<td> tekst </td>
...
</tr>
<tr>
<td> tekst </td>
<td> tekst </td>
...
</tr>
...
</table>

Opciono, unutar tabele se mogu koristiti i oznake <thead>, <tfoot> i <tbody>. Ove oznake služe za grupisanje redova unutar tabele, da bi se izdvojilo zaglavlje, podnožje i glavni deo sa podacima. Ako se ove oznake koriste, obavezno je da sekcije tabele budu navedene upravo po redosledu zaglavlje, podnožje, pa tek onda telo tabele.

<table>
<thead>
<tr> <td> tekst </td> ... </tr> ...
</thead>
<tfoot>
<tr> <td> tekst </td> ... </tr> ...
</tfoot>
<tbody>
<tr> <td> tekst </td> ... </tr> ...
</tbody>
</table>

Oznaka <table> ima određen broj parametara koji se mogu zadati.

Oznaka <tr> definiše red tabele i njeni atributi su:

Konačno oznaka <td> sadrži pojedinu ćeliju. Ova oznaka ima nekoliko parametara, ali najkorišćeniji su:

Tagovi <thead>, <tfoot> i <tbody> imaju atribute align, valign i char, koji su već objašnjeni.

Sledi jednostavan primer, gde u prvom redu jedna ćelija pokriva dve kolone, a u drugom redu se nalaze dve ćelije. Postignut efekat je identičan spajanju ćelija u Word-u ili Excel-u. Takođe je primenjeno i poravnanje po horizontali i vertikali. Širina cele tabele je svedena na polovinu širine stranice (prozora) u web čitaču:

<table width="50%" cellspacing="0" cellpadding="2" border="3">
<tr>
<td colspan="2" align="center"> Spojena ćelija </td>
</tr>
<tr>
<td align="left">Prvi red <br />Drugi red </td>
<td align="right" valign="bottom">Druga ćelija</td>
</tr>
</table>

U web čitaču ova tabela izgleda ovako:

Spojena ćelija
Prvi red
Drugi red
Druga ćelija

Da pogledamo još jedan primer kako funkcioniše spajanje ćelija. Recimo da imamo tabelu sa tri reda i po tri ćelije u svakom redu. Ako bismo prvu ćeliju proširili preko dve kolone, a bez uklanjanja bilo koje druge ćelije, dobili bismo deformisanu tabelu.

<table cellspacing="0" cellpadding="4" border="1">
<tr>
<td colspan="2" align="center"> 1 </td>
<td> 2 </td>
<td> 3 </td>
</tr>
<tr>
<td> 4 </td>
<td> 5 </td>
<td> 6 </td>
</tr>
<tr>
<td> 7 </td>
<td> 8 </td>
<td> 9 </td>
</tr>
</table>
1 2 3
4 5 6
7 8 9

Pokazalo se da je jedna ćelija u prvom redu višak, što znači da bismo trebali da je uklonimo. U ovom slučaju uklonićemo ćeliju sa brojem 2.

<table cellspacing="0" cellpadding="4" border="1">
<tr>
<td colspan="2" align="center"> 1 </td>
<td> 3 </td>
</tr>
<tr>
<td> 4 </td>
<td> 5 </td>
<td> 6 </td>
</tr>
<tr>
<td> 7 </td>
<td> 8 </td>
<td> 9 </td>
</tr>
</table>
1 3
4 5 6
7 8 9

Kako bi se ponašala tabela ukoliko bismo prvu ćeliju proširili preko dva reda, opet bez prethodnog izbacivanja ćelija koje su višak?

<table cellspacing="0" cellpadding="4" border="1">
<tr>
<td rowspan="2" align="center"> 1 </td>
<td> 2 </td>
<td> 3 </td>
</tr>
<tr>
<td> 4 </td>
<td> 5 </td>
<td> 6 </td>
</tr>
<tr>
<td> 7 </td>
<td> 8 </td>
<td> 9 </td>
</tr>
</table>

Ukoliko ste mislili da će ćelije 4 i 7 da "ispadnu" ispod tabele, prevarili ste se. Ne zaboravite, tabela se sastoji prvenstveno iz redova koji su popunjeni ćelijama, kolone kao takve se nigde ne pominju. Kada smo ćeliju 1 proširili na dva reda, ustvari se pojavio višak u drugom redu.

1 2 3
4 5 6
7 8 9

Grešku ćemo ispraviti ako uklonimo jednu od ćelija iz drugog reda, u ovom slučaju, neka to bude ćelija 4.

<table cellspacing="0" cellpadding="4" border="1">
<tr>
<td rowspan="2" align="center"> 1 </td>
<td> 2 </td>
<td> 3 </td>
</tr>
<tr>
<td> 5 </td>
<td> 6 </td>
</tr>
<tr>
<td> 7 </td>
<td> 8 </td>
<td> 9 </td>
</tr>
</table>
1 2 3
5 6
7 8 9

0E Forme

Pomoću formi korisnik može uneti neke podatke direktno preko HTML stranice. Forme mogu sadržati elemente koji se najčešće sreću kod korisničkog interfejsa - polja za unos, liste, padajuće liste, okvire za selekciju (checkbox), radiobutton-e i dugmiće koji mogu biti standardni ili u obliku sličice. Postoje i sakrivena polja koja nisu dostupna korisniku, ali imaju neku vrednost. Ovakva polja se koriste za prenos internih podataka.

Podaci koji se unose u formi mogu se proslediti serveru ili obraditi na samoj HTML stranici pomoću JavaScript-a.

Svaka forma je smeštena unutar <form> taga.

<form>
... elementi forme ...
<input lista parametara />
<input lista parametara />
...
</form>

Tag <form> ima nekoliko atributa, ali najvažniji su:

Elementi forme se u najvećem broju slučajeva definišu upotrebom <input> taga. Ovaj tag ima veliki broj atributa koji se koriste zavisno od tipa elementa.

Unutar forme je moguće koristiti i tag <label> za pridruživanje tekstualnih natpisa elementima forme. To znači da ako na formi imamo npr. checkbox kontrolu, moći ćemo da je uključimo ili isključimo samo ako kliknemo na njeno polje, ali pomoću labela, "štikliranje" će biti moguće i ako kliknemo na natpis.

<label>
Tekst pridružen elementu forme
</label>

Ovaj tag je jednostavan za korišćenje. Ima samo jedan parametar:

Padajuće liste se definišu pomoću tagova <select> i <option>:

<select>
<option> Prva stavka </option>
<option> Druga stavka </option>
...
</select>

Tag <select> određuje celu padajuću listu. Njegovi atributi su:

Tag <option> se koristi za definisanje jednog elementa liste. Može se koristiti samo unutar <select> taga. Atributi su:

Po nekoliko opcija je moguće grupisati unutar <optgroup> taga. Atributi su:

Unos teksta u više linija (u editoru) obezbeđuje tag <textarea>.

<textarea>
Tekst koji se pojavljuje u editoru...
</textarea>

Ovaj tag ima svega nekoliko parametara:

U sledećem primeru su iskorišćeni skoro svi elementi forme:

<form action="" method="post">
<p>
Izaberite fajl <input type="file" name="fajl" />
Ime <input type="text" name="ime" value="Vaše ime" />
Šifra <input type="password" name="sifra" value="" /> <br />
</p>
<p>
<b>Pol</b>
<input type="radio" name="pol" id="polMuski" value="polm" />
<label for="polMuski">Muški</label>
<input type="radio" name="pol" id="polZenski" value="polz" />
<label for="polZenski">Ženski</label>
<b>Položeni ispiti</b>
<input type="checkbox" name="osr" value="1" /> Osnovi računarstva
<input type="checkbox" name="inf" value="1" /> Informatika
<input type="checkbox" name="emr" value="1" /> E-Marketing <br />
</p>
<p>
<b>Odaberite studenta koji najviše voli Elektronski marketing</b>
<select name="lista">
<optgroup label="Studentkinje">
<option value="s1"> Marina </option>
<option value="s2" selected="selected"> Svjetlana </option>
<option value="s3"> Milica </option>
</optgroup>
<optgroup label="Studenti">
<option value="t1"> Ivan </option>
<option value="t2"> Nikola </option>
</optgroup>
</select>
</p>
<p>
<textarea rows="5" cols="60" name="tekst">Ovde navedite njegove razloge!</textarea>
<input type="reset" value="Brisanje" />
<input type="submit" value="Slanje" />
</p>
</form>

Izaberite fajl    Ime    Šifra

Pol    Položeni ispiti Osnovi računarstva Informatika E-Marketing

Odaberite studenta koji najviše voli Elektronski marketing

0F Okviri

Okviri (frames) nisu deo striktnog standarda, ali svi web browseri ih i dalje podržavaju. Zahvaljujući ovoj mogućnosti možemo da unutar strane prikažemo jednu ili više zasebnih HTML stranica u posebnim okvirima. Iako je u pitanju oznaka koja ima i deo za otvaranje i deo za zatvaranje, između njih se ne navodi tekst.

<iframe lista parametara> </iframe>

Najčešće upotrebljeni parametri kojima se određuje prikaz u okviru su sledeći:

<iframe src="dummy.html" id="okvir" width="500" height="300" scrolling="auto" frameborder="1"> </iframe>

Korisni linkovi