Curs 2 – HTML

Harti de imagini

Hartile de imagini sunt parti din aceeasi imagine care este „impartita” in mai multe zone, apoi in functie de zona pe care se executa click, browserul poate afisea o alta pagina.
De exemplu, pe un site dedicat turismului am putea avea pe pagina principala o imagine care reprezinta harta tarii (in care definim zonele dupa conturul judetelor); in cazul unui click pe zona Brasov se incarca o pagina care descrie diverse obiective turistice din judetul Brasov, iar un click pe o alta zona de judet ar duce la alta pagina care descrie obiectivele turistice din acel judet.
O harta de imagini ar putea fi folosita si pentru navigarea in cadrul unui site: daca avem mai multe butoane de navigare grupate, se poate folosi o imagine care reprezinta toate acele butoane – mai multe imagini se incarca mai incet decat o imagine cu dimensiunea egala cu suma celorlalte (in kb) deoarece comunicarea cu serverul (cand se cere imaginea) se face o singura data.
Pana aici am prezentat numai avantaje; dezavantajul major este ca un vizitator care are browserul setat sa nu incarce imagini pentru a naviga mai repede nu va vedea imaginea si nu va intelege mai nimic (putem totusi folosi marcajul „alt” de specificare a textului alternativ pentru imagini). Totusi acest lucru este foarte rar.

Crearea hartii de imagini

Pentru formarea unei harti de imagini, se adauga in interiorul tag-ului „<img>” atributul „usemap” a carui valoare reprezinta numele hartii, apoi se incepe formarea hartii prin elementul:

  • <map name=”nume_harta”> </map>

unde pt. „nume_harta” a atributului „name” se foloseste acelasi cuvant adaugat la „usemap”
– in cadrul acestuia se adauga elemente

  • <area atribute>

– acestea definesc zonele hartii imaginii si forma acestora (prin valorile atributelor),
– numarul de elemente „AREA” reprezinta numarul de suprafete (cu link-uri specifice) in care este „impartita” imaginea.

In urmatorul exemplu puteti vedea forma generala a creari unei „harti de imagini” (cu 2 cadre), URL poate fi orice adresa de site sau pagina a site-ului curent:

  • <img src=”poza.jpg” usemap=”#map1″>
    <map name=”map1″>
      <area shape=”rect” coords=”9, 120, 56, 149″ href=”url”>
      <area shape=”rect” coords=”100, 200, 156, 249″ href=”url”>
    </map>


In tabelul de mai jos puteti vedea atributele care se folosesc si descrierea acestora:

InstructiuneAtributeDescriere
<img atribute >marcaj de includere a imaginilor
ismapspecifica faptul ca este o harta de imagine pe server (se foloseste mai rar; de obicei folosim harti de imagine la client)
usemap=”nume_hartaspecifica harta de imagine la client
lowscr = „urlimaginea de rezolutie scazuta care se incarca prima (doar pentru Netscape)
<map atribute >
< / map >
specifica regiunile unei harti de imagine la client
name = „nume_hartanumele hartii de imagine (corespunzator atributului USEMAP al marcajului <IMG>)
<area atribute >defineste o regiune a unei harti de imagine
shape = „formaforma regiunii: rect sau rectangle (dreptunghi), circle sau circ (cerc), point (punct), poly sau polygon (poligon)
coords = „coordonatecoordonatele unei regiuni (in pixeli); se calculeaza in functie de coltul din stanga sus al imaginii (care are coordonatele (0, 0), adica x = 0, y = 0); variaza in functie de SHAPE = forma regiunii:
– pentru rect (dreptunghi) se dau coordonatele celor 4 colturi sau a celor din stg. sus si dr. jos ale regiunii
– pentru circ (cerc) se dau coordonatele centrului cercului si raza
– pentru point (punct) se dau coordonatele punctului
– pentru poly (poligon) se dau coordonatele colturilor poligonului
href = „=url=”URL – ul asociat regiunii specificate din cadrul imaginii; in cazul unui clic pe acea regiune se incarca pagina specificata prin URL
alt = „texttextul asociat regiunii specificate din cadrul imaginii; apare plasand mouse-ul deasupra regiunii respective sau celor cu browserul setat sa nu incarce imagini


Iata un exemplu practic, avem imaginea de mai jos.
In aceasta imagine avem trei zone distincte: dreptunghi, cerc si romb (poligon); pe care, prin codurile HTML de creare a hartii de imagini, le-am definit sa fie tratate ca zone diferite, separate, si cand dam click pe ele, fiecare deschide cate o pagina diferita (sugerata de numele din zona respectiva).


– Observati ca mouse-ul isi schimba forma numai cand este deasupra zonelor care au fost definite ca sa fie suprafete a hartii de imagini. Aceasta definire nu este facuta prin desen, ci prin coordonatele folosite in atributul „coords”, coordonate care au fost alese pentru a se potrivi cu desenul. Reperul cel mai important este lungimea in pixeli din coltul stanga-sus pana in punctele care formeaza zona dorita.

Codul HTML pentru acest exemplu este urmatorul (studiati cu atentie atributele folosite si coordonatele scrise; revizuiti si tabelul de mai sus):

<div align=”center”>
<img src=”image_map.gif” alt=”Harta de imagini” border=”0″ width=”300″ height=”300″ usemap=”#map1″>

<map name=”map1″>
  <area
      href=”dir/contact.php” alt=”Date de contact” title=”Date de contact”
      shape=”rect” coords=”6,116,97,184″>
  <area
      href=”curs.html” alt=”Curs HTML” title=”Curs HTML”
      shape=”circle” coords=”251,47″>
  <area
      href=”../index.html” alt=”Pagina principala” title=”Pagina principala”
      shape=”poly” coords=”150,217, 190,257, 150,297,110,257″>
</map>

</div>

Lucru cu tabele

Tabelele sunt elemente foarte utile pentru asezarea si prezentarea continutului intr-o pagina web.

1. Crearea de tabele

Pentru a crea tabele in paginile web se foloseste elementul <table> … </table> , acesta incadreaza alte patru sub-elemente, care alcatuiesc structura tabelului.

  • – Linia (randul) Tabelului <tr> … </tr>
  • – Titlul Tabelului <th> … </th>
  • – Coloanele tabelului (datele) <td> … </td>
  • – Sub-titlu tabelului <caption> … </caption>

Linia tabelului de obicei contine elementul pentru titlurile tabelului si elementul pentru coloanele tabelului.
In cadrul elementelor pentru titluri si coloanele tabelului se pot adauga si alte elemente HTML, cum ar fi cele pentru formatul textului, paragrafe, link-uri sau imagini
Mai jos puteti vedea un exemplu de cod HTML pentru crearea unui tabel:

<table border=”1″>
<tr>
    <th>titlu 1</th>
    <th>titlu 2</th>
</tr>
<tr>
    <td>linia 2- coloana 1</td>
    <td>linia 2- coloana 2</td>
</tr>
<tr>
    <td>linia 3- coloana 1</td>
    <td>linia 3- coloana 2</td>
</tr>
<tr>
    <td>linia 4- coloana 1</td>
    <td>linia 4- coloana 2</td>
</tr>
</table>

– In pagina web apare asa:

titlu 1titlu 2
linia 2- coloana 1linia 2- coloana 2
linia 3- coloana 1linia 3- coloana 2
linia 4- coloana 1linia 4- coloana 2

2. Atributele Tabelului

  • bgcolor   = defineste culoarea tabelului
  • width   = specifica lungimea tabelului (In pixeli sau procente din lungimea paginii)
  • border   = grosimea liniei (in pixeli) ce defineste tabelul si înconjoara fiecare celula
  • cellspacing   = spatiu dintre celule (in pixeli)
  • cellpadding   = spatiu dintre linia celulei si continutul acesteia (in pixeli)
  • align   = controlează poziţionarea tabelului in pagina, cu următoarele atribute : left, right, sau center
  • background   = controleaza culoarea de fond a tabelului, care poate fi si o imagine
  • bordercolor   = culoarea liniei din jurul tabelului
  • bordercolorlight   = culoarea luminoasa folosita de doua linii din cele patru care înconjoara tabelul
  • bordercolordark   = culoarea întunecata folosita de doua linii din cele patru care înconjoara tabelul


Sub-titlu tabelului
    – Sub-titlu tabelului „caption” permite specificarea unei linii de text care va aparea deasupra sau sub tabel, acest lucru este definit de atributul „align” care poate lua valorile: top (deasupra) bottom (jos)
Exemplu:

<table border=”1″ cellpadding=”2″>
<caption align=”bottom”>acesta este textul</caption>
<tr>
    <th>titlu 1</th>
    <th>titlu 2</th>
</tr>
<tr>
    <td>linia 2- coloana 1</td>
    <td>linia 2- coloana 2</td>
</tr>
</table>

– In pagina web apare asa:

titlu 1titlu 2
linia 2- coloana 1linia 2- coloana 2
acesta este textul

3. Atributele specifice elementelor pentru titlu si coloane

  • colspan   = specifica cat de multe coloane ale tabelului aceasta celula va inlocui
  • rowspan   = specifica cat de multe randuri ale tabelului aceasta celula va inlocui
  • align   = alinierea datelor celulei pe orizontala (left, right sau center)
  • valign   = alinierea datelor celulei pe verticala (top, middle sau bottom)
  • background   = controleaza culoarea de fond a celulei, care poate fi si o imagine
  • bgcolor   = defineste culoarea celulei (dar nu imagine)
  • width   = specifica lungimea celulei (In pixeli sau procente din lungimea paginii)
  • height   = specifica inaltimea celulei (In pixeli sau procente din inaltimea paginii)


in urmatorul exemplu puteti vedea rezultatul folosirii atributelor: „colspan” „rowspan” si „bgcolor”

<table border=”1″ cellpadding=”2″>
<caption align=”bottom”>acesta este textul</caption>
<tr>
    <th>titlu 1</th>
    <th>titlu 2</th>
</tr>
<tr>
    <td colspan=”2″>linia 2- coloana 1</td>
</tr>
<tr>
    <td rowspan=”2″>linia 3- coloana 1</td>
    <td>linia 3- coloana 2</td>
</tr>
<tr>
    <td bgcolor=”#adadff”>linia 4- coloana 2 – colorat</td>
</tr>
</table>

– In pagina web apare asa:

titlu 1titlu 2
linia 2- coloana 1
linia 3- coloana 1linia 3- coloana 2
linia 4- coloana 2 – colorat
acesta este textul


Exersati singuri si alte exemple de tabele, cu mai multe randuri si coloane.

Utilizarea cadrelor

Cadrele, sau frame-uri, sunt folosite pentru impartirea ferestrei browser-ului astfel incat sa fie afisate mai multe pagini in aceeasi fereastra de browser.
Un frame (cadru) este o parte din suprafata ferestrei browserului.
Fiecare frame prezinta în interior un document propriu (in general un document HTML). De exemplu puteti creea doua cadre intr-o fereastra, in primul cadru puteti incarca un document HTML (ex. doc1.htm) iar in al doilea cadru un alt document HTML, de la alta adresa (ex. doc2.htm)
Dupa cum puteti vedea in imaginea de mai jos.


Pentru crearea de frame-uri se pot folosi urmatoarele etichete HTML:

  • <frameset> si <frame> sau <iframe>

1. Configurarea cadrelor

Pentru inceput se adauga un element <FRAMESET></FRAMESET> in interiorul documentului HTML, în sectiunea HEAD.
<FRAMESET> determina cat din spaţiul ferestrei este atribuit fiecărui cadru, folosind atributele ROWS sau COLS care impart ecranul in Linii sau Coloane.
Acesta va conţine elemente <FRAME>, cate unul pentru fiecare divizare a ferestrei din browser.


        ROWS

  • Determina numarul de linii si marimea cadrelor care vor fi asezate in linie, începând de sus.
  • Pot fi folosite urmatoarele valori:
    • – pixeli absoluti ; ex : „360,120”
      – procente din inaltimea ecranului ; ex : „75%,25%”
      – valori proportionale, folosind (*). Acesta putând fi combinat cu procente sau pixeli. Ex : „120,*” sau  „30%,*”


        COLS

  • Determina numarul de coloane si marimea cadrelor care vor fi asezate pe coloane, începând din stanga.
  • Pot fi folosite urmatoarele valori:
    • – pixeli absoluti ; ex : „380,120”
      – procente din lungimea ecranului ; ex : „33%,77%”
      – valori proportionale, folosind (*). Acesta putând fi combinat cu procente sau pixeli. Ex : „120,*” sau  „30%,*”


Alte atribute ale elementului <FRAMESET>

  • FRAMEBORDER – Stabileste afisarea sau nu a unei borduri in jurul cadrelor. Posibile valori: 0, 1 sau YES, NO.
  • FRAMESPACING – Acest atribut este specificat in pixeli. Daca FRAMEBORDER este 0 atunci si acesta trebuie sa aiba valoarea 0
  • BORDER – Marginea cadrelor. Valori posibile: 0 sau 1
  • BORDERCOLOR – Acest atribut permite sa alegi culoarea bordurii.


Elementul <FRAME>

  • Acest element defineste un singur cadru , este scris in interiorul elementului <FRAMESET>
  • Pentru fiecare cadru trebuie scris cate un element <FRAME>
  • Acesta are urmatoarele atribute:
    • SRC – Aici trebuie scrisa adresa si numele paginii folosite pentru cadru
    • NAME – Aici trebuie scris numele de identificare al cadrului.
    • MARGINWIDTH – Atribut optional, valoare in pixeli. Determina spatiul orizontal dintre continutul cadrului si marginea  acestuia
    • MARGINHEIGHT – Atribut optional, valoare in pixeli. Determina spatiul vertical dintre continutul cadrului si marginea  acestuia.
    • SCROLLING – Afiseaza un Scroll Bar in cadru. Valori posibile: YES (permite afisarea Scroll Bar-ului), NO (nu va fi prezentat nici un Scroll Bar) si AUTO (browser-ul va decide daca este nevoie de Scroll Bar. Aceasta valoare este cea mai indicata)
    • NORESIZE – Optional, impiedica utilizatorul sa modifice marimea cadrului, prin selectarea marginii acestuia si mutarea in stânga sau dreapta ori sus sau jos.


Mai jos puteti vedea cum poate fi creata o pagina HTML care sa contina doua cadre, cel din stânga ocupând 23% din spatiul paginii iar cel din dreapta 77%

<HTML>
<HEAD>
<TITLE> TITLU PAGINII </TITLE>
</HEAD>
<FRAMESET COLS=”23%,77%”>
<FRAME SRC=”doc1.htm” NAME=”left” SROLLING=”NO”>
<FRAME SRC=”doc2.htm” NAME=”right” SROLLING=”YES”>
</FRAMESET>
<BODY>
</BODY>
</HTML>


De asemenea se poate crea un design de cadre cu o combinatie de linii si coloane.
In acest caz, un al doilea element „<FRAMESET>” va fi scris in locul elementului „<FRAME>” care descrie a doua linie. Al doilea element <FRAMESET> va divide spatiul ramas in doua coloane. Pentru aceasta, al doilea element „<FRAMESET>” trebuie urmat de inca doua elemente „<FRAME>”
– Pentru o mai buna intelegere puteti studia exemplu de mai jos, care creaza o pagina ce contine trei cadre:

<HTML>
<HEAD>
<TITLE> TITLU PAGINII </TITLE>
</HEAD>
<FRAMESET COLS=”120,*”>
<FRAME SRC=”baner.htm”>
<FRAMESET COLS=”120,*”>
<FRAME SRC=”Meniu.htm” NAME=”meniu”>
<FRAME SRC=”Continut.htm” NAME=”date”>
</FRAMESET>
</FRAMESET>
<BODY>
</BODY>
</HTML>

2. Atributul target

Cand sunt create link-uri care sunt folosite pentru a deschide pagini in cadre, este nevoie de specificarea unui atribut in eticheta de link „<a>” numit target, acesta spune browser-ului in ce cadru sa deschida pagina.
Atributul target foloseste ca valoare textul din atributul NAME al elementului FRAME in care se va deschide noua pagina.
De exemplu, daca avem un link in Meniu.htm care vrem sa deschidă pagina Doc3.htm in spaţiul in care se afla celalat cadru, de exemplu Continut.htm; codul HTML pentru link va arata astfel in Meniu.htm:

  • <a href=”Doc3.htm” target=”numele cadrului Continut.htm”> Numele link-ului </a>

– daca nu se specifica atributul TARGET , pagina se va deschide in cadrul curent
– atributul TARGET trebuie sa aiba acelasi nume specificat in codul HTML, ca si atributul NAME din FRAME-ul in care se doreste afisarea paginii.

Special Target:

  • Sunt 4 nume speciale de TARGET, care nu pot fi asociate cu atributul NAME. Fiecare are o functie speciala.
  • target=”_top”
    • – acesta va încarca link-ul in toata fereastra browser-ului, disparând astfel cadrele.
  • target=”_blank”
    • – acesta va încarca link-ul intr-o noua fereastra de browser, astfel ramanand deschisa si vechea fereastra.
  • target=”_self”
    • – acesta va încarca link-ul in aceeasi fereastra de unde a fost actionat.
  • target=”_parent”
    • – cadrul „_parent” este cadrul anterior de la care a fost deschis noul cadru, daca acesta nu exista atunci link-ul se va deschide in actuala fereastra de browser.

3. Adaugarea cadrelor iframe

Pentru crearea unui cadru cu „<iframe>” puteti folosi, ca exemplu, urmatoarea sintaxa (aceasta se adauca in sectiunea BODY, in locul unde doriti sa apara frame-ul):

  • <iframe src=”url_pagina” width=”600″ height=”200″ align=”center” scrolling=”yes” frameborder=”0″ name=”nume_frame”> </iframe>

– Unde „iframe” este elementul principal care indica adaugarea unui frame in pagina.
– „url_pagina” e adresa paginii care va fi incarcata in iframe, „width” si „height” reprezinta lungimea respectiv inaltimea cadrului (exprimata in procente sau pixeli), „scrolling” reprezinta permisiunea de derulare a paginii din cadru (yes sau no), „frameborder” specifica daca va fi sau nu afisata o margine (bordura) pentru cadru (1=da, 0=nu), iar „nume_frame” este numele cadrului (necesar pentru atributul „TARGET” in link-uri sau cand frame-ul este folosit de JavaScript).

Crearea formularelor

De cele mai multe ori formularele HTML sunt create pentru a fi folosite impreuna cu alte programe si scripturi web, cum sunt PHP, JavaScript si altele.

1. Tag-ul FORM

Pentru a crea un formular in HTTML se foloseşte elementul <form> … </form>, in cadrul acestuia se vor adauga celelalte elemente specifice.
Elementul <form> … </form> nu contine atribute pentru format, foloseste insa urmatoarele atribute:

  • action – aici se scrie adresa URL a unui script de pe server (de obicei PHP sau CGI), program care trebuie sa accepte datele din FORM , le proceseaza si trimite înapoi raspunsul la browser.
  • method – aici putem scrie get , sau post. Aceste valori specifica ce metoda HTTP va fi folosita pentru a trimite continutul formularului la server.
  • enctye – determina mecanismul folosit pentru a codifica continutul transmis din formular.
  • name – Este numele formularului, folosit de scripturi VB (Visula Basic) sau JavaSript.
  • target – Este tinta cadrului (frame) unde pagina va fi vizualizata, dupa transmiterea datelor din form.

2. Elementele de formular

In continuare sunt prezentate restul elementelor de formular care sunt folosite pentru a crea diferite campuri, casete, butoane in pagina web, necesare pentru a aduna datele care vor fi trimise la aplicatie pe server.
Cele mai multe se creaza prin atributul type al elementului <input> … </input>


Proprietatile elementului <input> … </input>

  • type – tipul de FORM folosit (caseta text, buton si altele …)
  • name – numele elementului respectiv de formular, folosit de scripturile la care sunt trimise datele
  • value – datele (valoarea) asociate acelui element de formular si care sunt trimise, impreuna cu numele, catre scripturi (PHP, CGI, JavaScript)
  • size – specifica numarul de caractere care dau lungimea zonei de text
  • maxlength – numarul maxim de caractere acceptate
  • checked – specifica daca un buton sau alta forma va fi initial selectata (bifata).
  • readonly – folosit pentru campuri de tip text, impedica modificarea valorii (textului) din acel camp
  • disabled – impedica folosirea campului care are aceasta proprietate. Va fi vizibil dar nu va putea fi folosit, datele acestuia nu vor fi trimise din formular la vreun script.


Casete de text

  • – este folosit pentru a crea in pagina un camp pentru text (cu o singura linie).
  • – Codul este <input type=”text”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – text
    • name – numele casutei de text, folosit de scriptul la care sunt trimise datele
    • value – va reprezenta propriul context ca valoare aleasa. Un sir de text care apare in casuta de text
    • size – specifica numarul de caractere care dau lungimea casutei de text (default 20)
    • maxlength – numarul maxim de caractere acceptate sa fie adaugate de utilizator


Camp textarea

  • – „textarea” este un element ce creaza un camp in pagina, in care utilizatorul poate adauga mai multe linii de text.
  • – Codul este <textarea></textarea>
  • – Acest element foloseste urmatoarele atribute:
    • name – numele campului de text, folosit de scriptul la care sunt trimise datele
    • rows – numarul de linii a zonei de text
    • cols – numarul de coloane a zonei de text
    • wrap – standard este OFF. Dar poate avea valorile : „VIRTUAL” sau „PHYSICAL”, astfel ca textul wraps in browser sa fie prezentat exact cum este scris de utilizator.


Casete pentru parole

  • – „password” este folosit pentru a permite adaugarea de parole. Caracterele adaugate in aceasta caseta nu sunt afisate cu valoarea lor reala, pentru a nu se vedea parola scrisa.
  • – Codul este <input type=”password”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – password
    • name – numele casutei pentru parole, folosit de scriptul la care sunt trimise datele
    • value – de obicei nu este adaugat. Daca este scris, va reprezenta parola default din acea caseta.
    • size – specifica numarul de caractere care dau lungimea casutei pt. adaugarea parolei (default 20)
    • maxlength – numarul maxim de caractere acceptate sa fie adaugate de utilizator


Casete de formular ascunse

  • – „hidden” este folosit pentru a adauga in formular date care sa nu fie vizibile in browser si care sunt trimise la scripturi impreuna cu celelalte date din formular.
  • – Codul este <input type=”hidden”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – hidden
    • name – numele casutei ascunse, folosit de scriptul la care sunt trimise datele
    • value – valoarea care se doreste sa fie transmisa prin acea caseta ascunsa.


Check box

  • – este folosit pentru adaugarea mai multor optiuni pe care utilizatorul le poate alege (oricate din ele) prin bifarea lor
  • – Codul este <input type=”checkbox”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – checkbox
    • name – numele casutei checkbox, folosit de scriptul la care sunt trimise datele
    • value – valoarea casetei checkbox respective, care poate fi selectata (bifata)
    • checked – daca este adaugat acest atribut, caseta checkbox respectiva este selectata (bifata).


Radio button

  • – este folosit pentru adaugarea mai multor optiuni dintre care utilizatorul poate alege una singura
  • – Codul este <input type=”radio”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – radio
    • name – numele casutei radio, folosit de scriptul la care sunt trimise datele
    • value – valoarea casetei radio respective, care poate fi selectata (bifata)
    • checked – daca este adaugat acest atribut, caseta radio respectiva este selectata (bifata).


Casete pentru upload

  • – „file upload” este folosit pentru a permite utilizatorului sa incarce alte documente pe serverul web. Aceasta caseta este insotita de un buton „Browse” prin care se alege documentul care va fi transferat pe server. (upload-ul se face tot prin intermediul unui script (PHP, CGI)
  • – Codul este <input type=”file”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – file
    • name – numele casutei upload, folosit de scriptul la care sunt trimise datele
    • size – specifica numarul de caractere care dau lungimea casutei upload.


Buton simplu

  • – acesta este folosit cu JavaScript sau VBScript pentru a efectua o actiune când este apasat
  • – Codul este <input type=”button” value=”Buton”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – button
    • name – numele butonului, necesar pentru a fi folosit de script
    • value – textul care apare pe buton.


Buton Submit

  • – acest element face ca prin apasarea lui browser-ul sa trimita numele si valoarea tuturor celorlalte elemente din formular la scriptul de pe server
  • – Codul este <input type=”submit” value=”Trimite”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – submit
    • name – numele butonului, poate fi folosit de scriptul la care se trimit datele
    • value – textul care apare pe buton.


Imagine pentru buton Submit

  • – permite aplicarea unei imagine in locul butonului Submit standard
  • – Codul este <input type=”image” src=”locatie_imagine”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – image
    • name – numele butonului, poate fi folosit de scriptul la care se trimit datele
    • src – locatia imaginii folosite.

Buton Reset

  • – permite utilizatorului sa stearga toate datele pe care le-a scris in celelalte elemente din formular
  • – Codul este <input type=”reset” value=”Sterge”></input>
  • – Acest element foloseste urmatoarele atribute:
    • type – reset
    • value – textul care apare pe buton.


Elemente select

  • – pentru acest element se foloseste tag-ul „<select></select>„, care formeaza o lista, un meniu, cu date ce pot fi selectate.
  • – Atributete elementului „
    • name – numele acestui element, necesar pentru a fi folosit de scriptul la care sunt trimise datele
    • size – seteaza inaltimea elementului Select, care reprezinta si numarul de optiuni din lista care vor fi vizibile initial
    • multiple – prezenta acestui atribut specifica faptul ca utilizatorul poate selecta mai multe optiuni.
  • – „<select></select>” este folosit impreuna cu elemente „<option> </option>” care reprezinta lista elementelor ce sunt adaugate si afisate in lista de selectare.
  • <option> </option> foloseste doua atribute:
    • selected – cand acesta este adaugat, optiunea respectiva este selectata când pagina web este initial incarcat. Cand sunt adaugate mai multe optiuni, este indicat folosirea acestui atribut doar cu una singura.
    • value – specifica valoarea variabilei numita in optiunea respectiva (necesara pt. scriptul care va primi datele).
  • – sunt doua tipuri de elemente Select, unde diferenta o face folosirea atributului SIZE
  • – Cele doua tipuri de elemente Select sunt:


1. Drop Down List (Lista de derulare)

  • – Codul este:
      <select name=”select”>
        <option>Optiune 1</option>
        <option>Optiune 2</option>
    </select>
  • – unde „name” este atributul care defineste numele acestui tag SELECT, iar „<option>” impreuna cu „Optiune 1” (si 2) reprezinta elementele din lista de selectare.

  2. List Box

  • – Codul este:
      <select name=”select” size=”4″>
        <option>Optiune 1</option>
        <option>Optiune 2</option>
    </select>
  • – unde „name” este atributul care defineste numele acestui tag SELECT, atributul „size” determina inaltimea elementului select care determina si numarul de optiuni vizibile initial, iar „<option>” impreuna cu „Optiune 1” (si 2) reprezinta elementele din lista de selectare.


Toate aceste elemente trebuie incadrate in tag-ul „<form> … </form>”!

Elemente speciale meta, embed, marquee, object

Codul HTML contine si anumite elemente speciale, unele folosite pentru optimizarea paginii in vederea unei cat mai bune indexari in motoarele de cautare sau altele pentru adaugarea de aplicatii audio si video ori alte elemente in pagina.

1. Elemente pentru optimizarea indexarii paginii

Aceste elemente de optimizare se adauga in sectiunea HEAD a documentului HTML.
Cel mai important este tag-ul <title></title>
Alte elemente importante pentru motoarele de cautare sunt cele META, (numite si „meta tag-uri), acestea au 2 atribute: name (care determina tipul meta tag-ului) si content (care determina continutul meta tag-ului).
In continuare sunt prezentate exemple de meta tag-uri care sunt indicate sa fie adaugate in fiecare pagina HTML:


<meta content=”text/html; charset=UTF-8″ http-equiv=Content-Type>

  • – indica browserului ca este un fisier HTML
  • – charset stabileste tipul de caractere (in general se foloseste ISO-8859-1 sau UTF-8), dar exista si altele.


<meta name=”description” content=”O fraza care descrie pe scurt continutul paginii”>

  • – in cazul unei cautari dupa cuvinte-cheie, motorul de cautare ne da o lista de pagini; pentru fiecare pagina (site) din lista apare titlul ei (dat cu marcajul TITLE) urmat de o fraza (cea de la name=”description” content=”o fraza care descrie …”); daca nu avem in marcajul META acea fraza, motorul va indexa dupa prima fraza din pagina; tot ea va fi data la o eventuala cautare.
  • – textul adaugat cu acest tag pentru descriere are prioritate inaintea frazelor din continut. (folositi maxim 40, 50 caractere).


<meta name=”keywords” content=”lista, de cuvinte, separate, prin, virgula”>

  • – motoarele de cautare tin cont de cuvintele din meta „keywords” in momentul indexarii site-ului pentru atunci cand sunt afisate rezultate de cautari. (folositi maxim 15-20 cuvinte).


<meta name=”author” content=”numele dvs., e-mail, etc”>

  • – acesta nu este neaparat necesar, dar nu strica sa-l folositi. Arata autorul documentului.


Recomandare: Cuvintele din tag-ul <title> … </title> este bine sa se regaseasca si in meta tag-urile „keywords”, „description” cat si in titlurile din continutul paginii.

Un alt meta tag care este cateodata necesar, dar nu are legatura cu motoarele de cautare, este „Refresh”, acesta are urmatoarea forma:
<meta http-equiv=”Refresh” content=”4;url=http://www.nume_site/pagina”>

  • – acesta determina browser-ul sa incarce o noua pagina, cea care este adaugata la url-ul din acest tag (aici http://www.nume_site/pagina), dupa un anumit numar de secunde (aici 4). Practic, face un redirect.

2. Adaugarea de sunet la o pagina HTML

Pentru a adauga sunet intr-o pagina web, puteti folosi elementele <embed> sau <bgsound>:
1. <bgsound></bgsound> – introduce un background (fundal) audio in pagina, are urmatoarele atribute:

  • src – Defineste locatia fisierului audio folosit (midi .au sau wav)
  • loop – defineste de cate ori se va repeta sunetul
  • delay – defineste timpul dintre repetari
  • title – Textul care va descrie sunetul.

Exemplu:

<bgsound src=”sunet.midi” loop=”3″ title=”titlul melodiei” derlay=”5″>


2. <embed></embed> – afiseaza o consola pentru sunet, are urmatoarele atribute:

  • src – Defineste locatia fisierului audio folosit (midi .au sau wav)
  • controls – ofera posibilitatea alegerii mai multor controale care includ: console, console mici, butoane de play si altele
  • autostart – cand este TRUE sunetul incepe in timp ce sunetul este descarcat de browser
  • hidden – cand este TRUE va ascunde controalele, standard este FALSE
  • loop – defineste de cate ori se va repeta sunetul
  • volume – seteaza volumul sunetului (sonorul)
  • height – inaltimea in pixeli a consolei
  • width – lungimea in pixeli a consolei.

Exemplu:

<embed src=”sunet.midi” width=”145″height=”60″ autostart=”truie” volume”100″ controls=”console” hidden=”false”>


– Tag-ul „<embed>” poate fi folosit si pentru afisarea de imagini video, care au extensiile „.movs”, „.mpeg” sau „.avi”, recomandat este „.movs”. Se adauga similar ca si sunetul, la „src” scriti calea catre fisierul video. Diferenta e ca nu trebuie folosit atributul „hidden” iar pentru „width” si „height” dimensiunile nu trebuie sa fie mai mici decat dimensiunile in care este salvat fisierul video.
– Totusi, afisarea de imagini video necesita mai mult timp deoarece fisierele video au dimensiuni destul de mari.

– „<embed>” se foloseste si pentru adaugarea de imagini flash (cu extensia „.swf”), pentru aceasta este incadrat in alt element, <object> </object>
– Iata un exemplu de cod prin care puteti adauga imagini flash in pagina web:

<object width=”580″ height=”400″>
<param name=”movie” value=”fisier.swf”>
<embed src=”fisier.swf” width=”580″ height=”400″>
</embed>
</object>

Unde „width” si „height” sunt dimensiunile cadrului in care este afisata imaginea flash, iar la atributele „value” si „src” se scrie calea catre fisierul „.swf” (trebuie scrisa aceeasi cale la ambele atribute).

Afisarea in pagina a elementelor cu EMBED necesita folosirea unui plug-in, care de cele mai multe ori, daca acesta nu este deja instalat, este ceruta automat incarcarea lui de catre browser.

3. Elemente de animatie text

HTML are un tag special, <marquee> </marquee>, prin care puteti crea un efect de miscare a unui text (sau imagine) care este incadrat de a cest element.
Are urmatoarele atribute:

  • loop – defineste de cate ori se va misca textul
  • height – inaltimea in pixeli a zonei in care se misca textul
  • width – lungimea in pixeli a zonei in care se misca textul
  • bgcolor – culoarea zonei in care se misca textul
  • direction – directia de miscare (left, right, up, down) – (stanga, dreapta, sus, jos)
  • behavior – defineste cum se va misca textul (scroll, slide, alternate)
  • scrolldelay – seteaza numarul, in milisecunde, intre refreshuri de miscare.


Exemplu de miscare pe orizontala

<marquee behavior=”alternate” bgcolor=”#00ffff” direction=”right”>Marquee text</marquee>

In pagina va arata asa:


Iata un alt exemplu unde miscarea se face pe verticala:

<marquee behavior=”alternate” bgcolor=”#00ffff” direction=”up” width=”100″ height=”100″>Marquee text</marquee>

In pagina va arata asa:


In loc de text poate fi folosit si o imagine, inlocuind textul (aici „Marquee text”) cu tagul „<img> pentru imagine.

4. Includerea unei pagini HTML externe

In afara de modalitatea cu folosirea tag-ului <iframe> pentru afisarea in pagina web HTML a continutului din alta pagina HTML
              Ex.: <iframe src=”url_pagina.html” width=”600″ height=”200″ align=”center” scrolling=”yes”> </iframe>
– exista si o alta solutie, data de tag-ul <object> folosit cu atributele „data” si „type„.
Urmatorul cod HTML este sintaxa generala de afisare intr-o pagina web a continutului HTML aflat in alta pagina externa:

<object data=”adresa_pagina_externa” type =”text/html” width=”600″ height=”400″> </object>


– Avantajul utilizarii uneia din aceste 2 metode, pentru cei care fac site-uri doar cu HTML, este faptul ca acelasi continut HTML poate fi inclus in mai multe pagini din site, fiind scris o singura data. De exemplu, in cazul unui Meniu ce trebuie afisat in toate paginile site-ului; codul acestuia poate fi scris intr-un fisier special („meniu.html„) apoi, cu una din formulele de mai sus (tag-ul „<iframe>” sau „<object>”) se adauga in fiecare fisier al paginilor, iar la o eventuala modificare a meniului se va face doar in codul acestuia din „meniu.html„.

Stiluri CSS in HTML

Cu HTML 4.0 au aparut specificatiile pentru modele de stiluri, cunoscute ca Modele de Stiluri in Cascada (Cascading Style Sheets – CSS). Acestea ajuta la afisarea grafica si incadrarea continutului in pagina.
Pana la acea data, forma, culoarea si marimea textului puteau fi date cu instructiunea „font” si cu atributele sale: „face”, „color”, „size”.
Modelele de stiluri pot fi aplicate aproape oricarei etichete HTML, folosind proprietati si valori specifice codului CSS, unele din ele sunt prezentate in tabelul de jos al paginii.
Modelele de stiluri pot fi aplicate in mai multe moduri:


1. Intern – direct in eticheta HTML

  • – Pentru adaugarea unui STYLE intern la un element se foloseste atributul style urmat de proprietati si valori, folosind urmatoarea sintaxa:
    • <element style=”proprietate:valoare; proprietate:valoare;”></element>
  • – Exemplu:

<h4 style=”color:#ff1111;”>Exemplu h4</h4>

  • In pagina va apare

Exemplu h4


2. In antetul (header-ul) fisierului

  • – In acest caz se adauga in sectiunea HEAD a documentului HTML urmatoarea sintaxa <style type=”text/css”> … </style>. Aceasta spune browser-ului ca sunt adaugate elemente de stil CSS.
  • – Aceasta metoda este utila cand se doreste folosirea acelorasi stiluri pentru mai multe elemente din pagina astfel sunt scrise o singura data si nu la fiecare element.
  • – Proprietatile si valorile de sti CSS se introdul in acest element STYLE, dupa cum puteti vedea in exemplul urmator:

<html>
<head>
<title>titlu</title>
<style type=”text/css”>
<!–
  h2 {color:blue; text-decoration:underline;}
–>
</style>

</head>
<body>

</body>
</html>

  • – Conform acestui cod, toate textele „h2” din pagina vor avea culoarea albastra si vor fi subliniate.
  • Se foloseste (optional) „<!– … –>” pentru browserele care nu recunosc elementul „<style>” si astfel il ignora.


3. Extern

  • – Aici proprietatile si valorile pentru diverse stiluri sunt specificate intr-un fisier extern special, de obicei cu extensia „css” (pe care il putem construi cu un editor de simplu texte gen Notepad).
  • – Avantajul folosirii fisierelor externe CSS este faptul ca aceleasi coduri de stil pot fi folosite de mai multe pagini din site, chiar tot site-ul, fiind scrise o singura data. In plus ajuta la micsorarea ca marime (in bytes) a documentului HTML care astfel se incarca mai repede.
  • – In fisierul extern CSS se scriu direct elementele cu proprietatile si valorile dorite, NU se mai adauga eticheta „style„.
  • Exemplu de model pentru creare unui fisier „.css” :
  • Se scrie intr-o pagina noua, deschisa cu NotePad, urmatoarele, si se salveaza fisierul cu extensia „.css”

a:link {
    color:#0000ff;
    text-decoration:none;
    font-weight:normal;
    font-size:15px;
    font-family: Arial;
}
 
a:visited {
    color:#008080;
    text-decoration:none;
    font-weight:normal;
    font-size: 15px;
    font-family: Arial;
}

a:active {
    color:#b54090;
    text-decoration:underline;
}

a:hover {
    color:#b54090;
    text-decoration:underline;
    font-weight:normal;
    font-size: 15px;
    font-family: Arial;
}
 
p {
    font-weight: normal;
    font-size: 11pt;
    line-height: 12pt;
    text-indent: 20px;
    font-family: Arial;
}

  • Pentru a adauga acest stil CSS intr-o pagina web, adaugati in sectiunea HEAD a documentului HTML care va folosi acel fisier cu stiluri, (intre <head> … </head>) urmatoarea comanda:
    • <link href=”fisier.css” rel=”stylesheet” type=”text/css”>
  • – unde la „href” se scrie calea si numele fisierului css folosit.


Se poate face chiar ca un anumit stil sa poata fi aplicat numai unei singure etichete HTML, iar altul sa poata fi aplicat mai multor etichete HTML de tipuri diferite. Pentru aceasta se foloseste atributul id sau class in interiorul etichetelor HTML la care vrem sa aplicam un anumit stil.
Diferenta dintre id si class este faptul ca se poate folosi acelasi atribut „class” pentru mai multe elemente HTML, pe cand acelasi „id” se foloseste numai pentru un singur element HTML.
Exemplu pentru „class”

<html>
<head>
<title>Titlul</title>
<style type=”text/css”>
<!–
.cuvant {
    color:#1111fe;
    dext-decoration:underline;
}
–>
</style>
</head>
<body>
<h2 class=”cuvant”>Text …</h2>
<h3 class=”cuvant”>Alt text … </h3>
</body>
</html>

– In exemplu de sus, stilul creat poate fi folosit doar de elementele unde vom adauga comanda class=”cuvant”, celelalte elemente nefiind afectate.

  • Important: selectorul (aici „cuvant”) in STYLE trebuie sa inceapa cu punct (.)


Exemplu pentru „id”

<html>
<head>
<title>Titlul</title>
<style type=”text/css”>
<!–
#idh {
    color:#fe1111;
    dext-decoration:overline;
    text-align:center;
}
–>
</style>
</head>
<body>
<h2 id=”idh”>Text …</h2>
<h2>Alt text … </h2>
</body>
</html>

– In acest exemplu, stilul creat pentru „idh” va fi folosit doar pentru primul element „h2” care contine ‘id=”idh”

  • Important: Pentru stilurile definite de ID, selectorul (aici „idh”) trebuie sa inceapa cu #.


Incercati singuri aceste exemple pentru a vedea rezultatul.

In tabelul de mai jos sunt cateva atribute (sau proprietati) care pot fi modificate cu STYLE

AtributDescriereValori
backgroundimagini sau culori de fundalURL-ul (imaginii) sau culori date prin nume sau valoare RGB
Colorculoarea textuluinume sau valoare RGB
font-familytipul fontuluiNumele fontului sau al familiei de fonturi
font-sizedimensiunea fontuluidata in puncte(pt), inch(in), centimetri(cm), pixeli(px)
font-styletext cursivnormal, italic
font-weightgrosimea fontuluiextra-light, light, demi-light, medium, demi-bold, bold, extra-bold
line-heightdistanta dintre liniile de baza ale randurilordata in puncte(pt), inch(in), centimetri(cm), pixeli(px), procent(%)
margin-leftdistanta fata de marginea din stanga a paginiidata in puncte(pt), inch(in), centimetri(cm), pixeli(px)
margin-rightdistanta fata de marginea din dreapta a paginiidata in puncte(pt), inch(in), centimetri(cm), pixeli(px)
margin-topdistanta fata de textul precedent sau fata de marginea de sus a paginiidata in puncte(pt), inch(in), centimetri(cm), pixeli(px)
text-alignalinierea textuluileft(stanga), center(centru), right(dreapta), justify
text-decorationevidentierea textuluinone(nimic), underline(subliniat), italic(cursiv), line-through(taiat)
text-indentdistanta primului rand fata de marginea din stangadata in puncte(pt), inch(in), centimetri(cm), pixeli(px)
border-styletipul chenaruluinone, groove, dotted, dashed, solid, double, ridge, inset, outset
border-widthgrosimea chenaruluidata in puncte(pt), inch(in), centimetri(cm), pixeli(px)
border-colorculoarea chenaruluinume sau valoare RGB
72 pt=1 inch = 25,4 mm;
un font de dimensiunea 13pt inseamna ca sunt 13 puncte intre partea superioara a literei N sau h si partea inferioara a literei y sau j


– Pentru aplicarea unui stil css asupra unei portiuni dintr-un text, se foloseste eticheta <span> </span>, ca in exemplu urmator:

O fraza <span class=”cls”> cu orice text</span> si caractere.

– in acest exemplu se pot aplica elemente de stil css clasei (.cls) care vor afecta doar portiunea de text inclusa intre tag-ul „<span>”.

Pentru mai multe informatii despre lucru cu stiluri CSS, studiati lectiile Curs CSS.

DIV si SPAN

Tag-urile <div></div> si <span></span> nu au efecte importante daca sunt folosite singure.

– Tag-ul DIV creaza sectiuni de blocuri in pagina, al caror forma si grafica de continut pot fi manipulate pentru fiecare separat. Are doar un singur atribut HTML, align (pt. aliniere pe orizontala) care poate avea urmatoarele valori: left (stanga), right (dreapta), center (centru), justify (distanta textului fata de margini egala).

– Tag-ul SPAN creaza posibilitatea modificarii separate a unei portiunii dintr-un context, putand fi folosit si ca o „classa” cu CSS. Singur nu are nici un efect vizual poropriu si nu foloseste nici un atribut HTML special.

Chiar daca folosite singure, DIV si SPAN nu au nici un efect major, in combinatie cu CSS pot crea aspecte grafice importante. Pentru aceasta, ambele pot folosi atributul style (cu proprietati CSS) ori atributele id sau class ca identificator pentru stiluri CSS.

1. Tag-ul DIV

Tag-ul <div></div> este unul din cele mai folosite elemente HTML, aceasta deoarece in combinatie cu proprietati CSS poate crea efecte grafice deosebite, iar in interiorul lui pot fi incluse oricare elemente HTML: tabele, formulare, marcatori, linii sau alte DIV-uri. Cadrul in care acestea sunt adaugate poate avea propriul fundal (background), lungime, inaltime si margini cu diferite linii.
Iata un exemplu in care avem 2 div-uri, unul contine un formular iar celalalt o lista „<ul></ul>”, fiecare DIV cu proria culoare de fundal, dimensiuni stabilite si margini diferite.

<div style=”width:250px; background:#aaee88; border:1px solid blue;”>
    <form action=”” method=”post”>
        Nume: <input type=”text”></input><br>
        E-mail:<input type=”text”></input><br>
        <input type=”submit” value=”Trimite”></input>
    </form>
</div>
Alt DIV
<div style=”width:180px; background:#88aafe; border:5px outset #888888;”>
    <ul>
        <li>Linie 1</li>
        <li>Linie 2</li>
        <li>Linie 3</li>
    </ul>
</div>

– In atributul „style” sunt specificate proprietatile CSS care stabilesc aspectul grafic al fiecarui DIV (lungime in pixeli, fundal si bordura).
Acest cod va afisa intr-o pagina web urmatorul rezultat:

Nume:
E-mail:

Alt DIV

  • Linie 1
  • Linie 2
  • Linie 3


Un alt aspect important este si faptul ca putem pozitiona continutul din interiorul tag-ului <div> </div> oriunde in pagina, folosind proprietati CSS precum:

  • position – care poate lua valorile: static, relative, fixed sau absolute (pt. mai multe detalii vezi Curs CSS).
  • margin – care stabileste distanta dintre marginea cadrului sectiunii (blocul) DIV si elementele din jurul lui (pt. mai multe detalii vezi Margini si chenare CSS).


Iata un exemplu in care, prin folosirea mai multor DIV-uri pozitionate suprapus, putem afisa in pagina un titlu cu aspect grafic deosebit. Codul este urmatorul:


<div style=”position:relative; font-size:21px;”>
  <div style=”position:absolute; margin-top:-1; margin-left:-2; color:white;”>Titlu – Exemplu</div>
  <div style=”position:absolute; margin-top:1; margin-left:2; color:black;”>Titlu – Exemplu</div>
  <div style=”position:absolute; margin-top:0; margin-left:0; color:silver;”>Titlu – Exemplu</div>
</div>

In acest exemplu avem un prim DIV cu atributul „style” in care avem o proprietate de pozitionare relativa (pt. a pozitiona toate celelalte elemente pe care el le incadreaza dupa contextul scris anterior) si o alta proprietate pentru marimea textului. In interiorul acestui DIV avem alte 3 div-uri, pozitionate absolut si care incadreaza fiecare cate un text identic. Prin pozitionarea absoluta div-urile se suprapun, la o distanta stabilita de proprietatile „margin-top” si „margin-left”, iar prin culoare diferita (cu proprietatea „color”) data textului din fiecare „div” va apare in pagina web urmatorul rezultat:


– Pentru a folosi tag-urile DIV eficient si cu rezultate deosebite este necesar sa cunoasteti proprietatile CSS de baza (pentru fonturi, pozitionare, margini, borduri, background) pe care le puteti invata la Cursul CSS din acest site.

2. Tag-ul SPAN

Cu tag-ul <span></span> puteti adauga stiluri grafice unei anumite portiuni dintr-un context. Pentru aceasta trebuie folosit impreuna cu proprietati CSS care pot fi adaugate printr-un atribut „style” in interiorul etichetei „<span>” (sau in foi de stil).
Pentru a intelege mai bine, iata un exemplu in care se scoate in evidenta anumite cuvinte dintr-un text. Pentru aceasta incadram cuvintele respective intr-un tag SPAN caruia ii adaugam proprietatile dorite, ca in exemplul urmator.

Aceasta este o lectie din <span style=”background:#88fe88; font-weight:bold;”>Cursul HTML</span> de pe Discant.net.

– Am adaugat portiunea din context (aici textul „Curs HTML”) intr-un tag SPAN pentru a-i putea aplica proprietatile grafice dorite si care nu afecteaza restul continutului.
– Astfel, prin proprietatile adaugate in „style” (background:#88fe88; si font-weight:bold;), in pagina web va fi afisat textul in felul urmator:

Aceasta este o lectie din Cursul HTML de pe Discant.net.


Tag-ul SPAN poate fi folosit si ca o classa pentru CSS. Astfel, proprietatile adaugate elementului „span” intr-o foaie de stil vor fi transferate tuturor elementelor din pagina care sunt incadrate in tag-uri „<span></span>”.
Iata un exemplu

<html>
<head>
  <title>Titlul</title>
  <style type=”text/css”>
    span {
      border:2px solid red;
      padding:1px;
      color:#1111fe;
    }
  </style>
</head>
<body>
<h4>Exemplu de <span>text cu eticheta SPAN</span> in interiorul frazei.</h4>
<ul>
  <li>Linia 1</li>
  <li><span> Linie 2, in span </span></li>
  <li>Linia 3</li>
  <li><span> Linie 4, in span </span></li>
  <li>Linia 5</li>
</ul>
</body>
</html>

– Observati cum a fost adaugat elementul „span” in tag-ul „<style> </style>” din sectiunea HEAD a codului HTML. Acest element face referire la toate tag-urile „<span></span>” din document si le transmite aceleasi proprietati.
– Acest cod va afisa intr-o pagina web urmatorul rezultat:

Exemplu de text cu eticheta SPAN in interiorul frazei.

  • Linia 1
  • Linie 2, in span
  • Linia 3
  • Linie 4, in span
  • Linia 5

3. Diferenta dintre DIV si SPAN

– Diferenta dintre DIV si SPAN este faptul ca DIV incadreaza o sectiune din document sub forma unui bloc iar SPAN incadreaza o portiune din context sub forma de linii.
Iata un exemplu din care se poate intelege mai bine, atribuim aceeasi proprietate grafica (bordura rosie) unui tag DIV si unui tag SPAN.’

<div style=”border:1px solid #fe1111;”>
Fraza pe mai multe linii, <br>
continua cu linia a doua, <br>
se termina cu linia a treia.
</div>
<br>
– Acum cu SPAN:<br><br>
<span style=”border:1px solid #fe1111;”>
Fraza pe mai multe linii, <br>
continua cu linia a doua, <br>
se termina cu linia a treia.
</span>

– In pagina web va apare

Fraza pe mai multe linii,
continua cu linia a doua,
se termina cu linia a treia.


– Acum cu SPAN:

Fraza pe mai multe linii,
continua cu linia a doua,
se termina cu linia a treia.

– Observati diferenta, modul in care este afisata bordura. Pentru DIV aceasta incadreaza exteriorul sectiunii (blocul) div-ului, iar pentru SPAN bordura este afisata pe fiecare linie.
– De aceea este indicata folosirea tag-ului „<span></span>” pentru continut din interiorul unei linii.

– Cand aveti mai multe elemente <div></div> si <span></span> in pagina, este indicat folosirea atributului „id” sau „class„. Acestora le acordati proprietati CSS o singura data in sectiunea HEAD sau intr-un fisier CSS extern. Este mai eficient decat sa scrieti in fiecare „<div>” si „<span>” cate un atribut „style”.
Pentru mai multe detalii despre „ID” si „CLASS” folosite cu CSS, puteti studia Cursul CSS.

De la HTML la XHTML

Explicatiile din acesta sectiune sunt pentru cei care cunosc deja limbajul HTML, prezentat detaliat in lectiile precedente din acest curs.
XHTML (eXtensible HyperText Markup Language) are acelasi rol si capacitati ca HTML, fiind o varianta avansata a acestuia, dar cu o sintaxa putin diferita, mai stricta.
XHTML este un inlocuitor modern al HTML-ului, o combinatie intre HTML si XML, fiind aproape identic cu HTML 4.01.
Principala diferenta ce trebuie avuta in vedere la XHTML fata de HTML este la sintaxa acestuia.
Daca stiti deja limbajul HTML, respectand regulile de sintaxa XHTML, prezentate mai jos, se poate spune ca stiti si XHTML.

Reguli de sintaxa XHTML

1. – Pentru ca un document XHTML sa fie considerat valid, acesta trebuie sa aibe la inceput (prima linie) o declaratie !DOCTYPE, un DTD (Document Type Definitions) ce contine regulile standard ale elementelor din pagina.
Sunt 3 tipuri de DTD ce pot fi folosite: Strict, Transitional si Frameset. Iata cod-ul specifc fiecaruia, ce trebuie sccris in prima linie din pagina:

  • Strict – folosit pentru o sinntaxa stricta, fara vreun element ce nu e specific XHTML.

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

  • Transitional – este tipul cel mai comun si indicat. Acesta permite in pagina si elemente HTML ce nu sunt stricte XHTML.

<!DOCTYPE html PUBLIC „-//W3C//DTD XHTML 1.0 Transitional//EN” „http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

  • Frameset – mai putin folosit, acest tip e pentru cazuri cand in pagina se folosesc frame-uri.

<!DOCTYPE html PUBLIC „-//W3C//DTD XHTML 1.0 Frameset//EN” „http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”;>


Dupa una din aceste declaratii se adauga codul pentru structura documentului XHTML, cum se vede in urmatorul exemplu (structura standard ce trebuie sa o aibe o pagina de site XHTML):

<!DOCTYPE html PUBLIC „-//W3C//DTD XHTML 1.0 Transitional//EN” „http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml” lang=”ro”>
<head>
<meta http-equiv=”content-type” content=”text/html; charset=utf-8″ />
<title>Titlul paginii</title>
<meta name=”description” content=”Descrierea paginii” />
<meta name=”keywords” content=”cuvinte, principale, din, pagina” />
</head>
<body>
Continutul paginii, care apare in fereastra navigatorului web.
</body>
</html>


2. – Toate elementele si atributele trebuie scrise cu litera mica.

  • Corect: <div>     Incorect: <DIV>
  • Corect: <tag atribut=”valoare”>     Incorect: <tag Atribut=”valoare”>


3. – Valorile tuturor atributelor trebuie scrise intre ghilimele.

  • Corect: <tag width=”80″>
  • Incorect: <tag width=80>


4. – Spre deosebire de HTML, in care elementele sunt inchise cu un al doilea tag (identic) de inchidere, iar unele nici nu trebuie sa aibe inchidere, in XHTML toate elementele trebuie inchise si exista tag-uri specifice care au inchidere singulara, in acelasi tag.

In XHTMLIn HTML
<meta … /><meta …>
<br /><br>
<hr /><hr>
<input /><input>
<img … /><img …>

– Celelalte, precum <p> </p>, <div> </div>, <span> </span>, … etc. sunt la fel.

5. – La inchiderea tag-urilor trebuie sa se respecte ordinea simetrica de deschidere.

  • Corect: <b>Ceva <i>altceva</i></b>
  • Incorect: <b>Ceva <i>altceva</b></i>


6. – Toate atributele trebuie sa fie insotite de o valoare. In HTML fiind atribute, precum „checked”, care sunt scrise fara vreo valoare. Iata cateva din cele mai folosite:

In XHTMLIn HTML
checked=”checked”checked
declare=”declare”declare
readonly=”readonly”readonly
disabled=”disabled”disabled
selected=”selected”selected
nowrap=”nowrap”nowrap
noresize=”noresize”noresize


7. – Atributul name din tag-urile <a> si <map> a fost inlocuit cu id.

XHTML – Tag-uri si atributele lor

      In aceasta pagina gasiti o lista, clasificata pe grupe de elemente cu tag-urile XHTML si atributele ce po fi folosite pentru fiecare TAG.
Aceasta lista poate fi de folos mai ales cand doriti sa creati pagini web valide XHTML (Transitional), oferind o referinta la ce atribute pot fi folosite cu un anume TAG.

– Structura

<html> </html>Tag-ul radacina, ce contine toate celelalte tag-uri si indica browser-ului ca acesta este inceputul /sfarsitul documentului (X)HTML.

  • xmlns
  • dir
  • lang
  • xml:lang

<head> </head>Contine meta informatii (meta-tags), tag-ul „<title> </title>” si alte tag-uri pt. scripturi si stiluri CSS. Toate acestea, cu exceptia Titlului, nu sunt afisate de navigatorul web.

  • xml:lang
  • profile

<body> </body>In acest tag se adauga continutul ce va fi afisat in pagina web. Acest continut poate fi alcatuit si din alte tag-uri, prezentate in continuare.

  • class
  • id
  • style
  • title
  • onmousedown
  • onmouseover
  • onkeypress
  • onkeyup
  • onmouseup
  • onload

– Tag-uri ce pot fi incluse in zona <head>

<title> </title>Contine Titlul ce va fi afisat in bara de sus a browser-ului.

  • xml:lang

<meta />Adauga meta informatii despre document, precum: descriere, cuvinte cheie, autor, si altele.

  • name
  • content
  • http-equiv
  • xml:lang
  • scheme

<link />Este folosit in tag-ul <head> pentru a face legatura cu (sau a include) o resursa externa, in general CSS (Cascading Style Sheet).

  • class
  • id
  • style
  • title
  • href
  • xml:lang
  • hreflang
  • charset
  • type
  • rel
  • rev
  • media

<style> </style>Este folosit pentru a defini proprietati de stil CSS pentru elementele din pagina.

  • type
  • media
  • dir
  • title
  • lang
  • xml:lang

– Text

<span> </span>O sectiune in document, fara linie noua la inceput si sfarsit. Singur nu face nimic, de aceea este adesea folosit cu un „id” sau „class” pentru ca sa-i fie aplicate proprietati CSS.

  • class
  • id
  • style
  • title
  • xml:lang

<div> </div>O sectiune in document, un cadru cu linie noua inainte si dupa el. Singur nu face nimic, de aceea este adesea folosit cu un „id” sau „class” pentru ca sa-i fie aplicate proprietati CSS.

  • class
  • id
  • style
  • title
  • xml:lang

<p> </p>Un paragraf cu o linie noua in plus inainte si dupa el.

  • class
  • id
  • style
  • title
  • xml:lang

<h1> </h1>, <h2> </h2>, <h3> </h3>, <h4> </h4>, <h5> </h5> si <h6> </h6>Folosit in general pentru titluri si sub-titluri in pagina web. Textul apare ingrosat si mare pt. „<h1>”, descrescand treptat pana la „<h6>”.

  • class
  • id
  • style
  • title
  • xml:lang

<br />Adauga o linie noua dupa el.

  • class
  • id
  • style
  • title

<blockquote> </blockquote>Acest Tag poate fi folosit pentru citate /fraze lungi. Cadrul definit de acesta lasa un anumit spatiu in exterior (stanga si dreapta).

  • class
  • id
  • style
  • title
  • xml:lang
  • cite

<q> </q>In acest tag se adauga de obicei fraze scurte, citate, ce vor fi afisate intre ghilimele.

  • class
  • id
  • style
  • title
  • xml:lang
  • cite

<code> </code>Poate fi folosit pentru a prezenta coduri de program, textul fiind afisat distinct pt. acest tip.

  • class
  • id
  • style
  • title
  • xml:lang

<u> </u>Afiseaza textul subliniat.

  • class
  • id
  • style
  • title
  • xml:lang

<i> </i>Afiseaza textul inclinat.

  • class
  • id
  • style
  • title
  • xml:lang

<b> </b>Afiseaza textul ingrosat.

  • class
  • id
  • style
  • title
  • xml:lang

<strong> </strong>Afiseaza textul ingrosat (similar cu <b>).

  • class
  • id
  • style
  • title
  • xml:lang

<em> </em>Afiseaza textul inclinat (similar cu <i>).

  • class
  • id
  • style
  • title
  • xml:lang

<sup> </sup>Afiseaza textul in partea de sus a liniei randului, si mai mic.

  • class
  • id
  • style
  • title
  • xml:lang

<sub> </sub>Afiseaza textul in partea de jos a liniei randului, si mai mic.

  • class
  • id
  • style
  • title
  • xml:lang

<a> </a>Creaza o legatura catre alta pagina web sau zona din pagina curenta (link intern).

  • class
  • id
  • style
  • title
  • xml:lang
  • accesskey
  • charset
  • type
  • href
  • hreflang
  • onblur
  • rev
  • rel
  • shape
  • coords
  • tabindex
  • onfocus
  • onclick

– Liste

<ol> </ol>Tag folosit pentru afisarea unei liste ordonate, numerotate.

  • class
  • id
  • style
  • title
  • xml:lang

<ul> </ul>Tag utilizat pentru afisarea unei liste neordonate numeric, ci cu simboluri gen: disc, cerc, patrat.

  • class
  • id
  • style
  • title
  • xml:lang

<li> </li>Defineste un element in liste <ol> sau <ul>, fiind adaugat in cadrul acestora.

  • class
  • id
  • style
  • title
  • xml:lang

<dl> </dl>Creaza o lista de definitii. Trebuie sa contina tag-urile <dt> si <dd>.

  • class
  • id
  • style
  • title
  • xml:lang

<dt> </dt>Defineste un termen pentru lista de definitii.

  • class
  • id
  • style
  • title
  • xml:lang

<dd> </dd>Se adauga in cadrul tag-ului <dt> si prezinta lista de definitii pentru termenul definit de acel tag.

  • class
  • id
  • style
  • title
  • xml:lang

– Obiecte

<object> </object>Folosit pentru a include in pagina elemente multimedia.

  • class
  • id
  • style
  • title
  • xml:lang
  • usemap
  • name
  • height
  • width
  • classid
  • codebase
  • data
  • type
  • codetype
  • standby
  • tabindex
  • archive

<param />Este adaugat in cadrul tag-ului <object> si e folosit pentru a trimite parametri la obiectul respectiv, inclus in pagina XHTML.

  • value
  • type
  • valuetype
  • id
  • name

– Tabele

<table> </table>Defineste un tabel in care pot fi adaugate randuri, coloane, titluri, celule de tabel.

  • class
  • id
  • style
  • title
  • xml:lang
  • border
  • align
  • summary
  • width
  • dellpadding
  • cellspacing
  • frame
  • rules

<thead> </thead>Defineste zona de Header (Antet) a tabelului, unde se pot include linii si coloane.

  • class
  • id
  • style
  • title
  • xml:lang
  • char
  • charoff
  • align
  • valign

<tfoot> </tfoot>Defineste zona de subsol a tabelului, unde se pot include linii si coloane.

  • class
  • id
  • style
  • title
  • xml:lang
  • char
  • charoff
  • align
  • valign

<tbody> </tbody>Defineste corpul tabelului, unde se pot include linii si coloane.

  • class
  • id
  • style
  • title
  • xml:lang
  • char
  • charoff
  • align
  • valign

<tr> </tr>Creaza o linie noua in tabel, in care se includ coloane.

  • class
  • id
  • style
  • title
  • xml:lang
  • char
  • charoff
  • align
  • valign

<th> </th>Se foloseste pt. celule cu titlu pentru coloane. Afiseaza un scris mai ingrosat.

  • class
  • id
  • style
  • title
  • xml:lang
  • axis
  • abbr
  • headers
  • rowspan
  • colspan
  • scope
  • char
  • charoff
  • align
  • valign

<td> </td>Se foloseste pt. a crea coloane si celule in randurile tabelului. Trebuie adaugat in cadrul tag-ului <tr>.

  • class
  • id
  • style
  • title
  • xml:lang
  • axis
  • abbr
  • headers
  • rowspan
  • colspan
  • scope
  • char
  • charoff
  • align
  • valign

<caption> </caption>Defineste un titlu pentru tabel. Acest tag trebuie adaugat imediat dupa eticheta <table> si poate fi adaugat doar unul singur.

  • class
  • id
  • style
  • title
  • xml:lang

– Formular

<form> </form>Incepe crearea unui formular in care pot fi incluse diferite casute si butoane.

  • class
  • id
  • style
  • title
  • xml:lang
  • action
  • enctype
  • method
  • onsubmit
  • onreset
  • accept
  • accept-charset

<label />Defineste o eticheta ce va corespunde unei casute de formular a carui „id” e adaugat in atributul „for”. Cand se da click pe textul din eticheta sa, comuta controlul la acea casuta de formular.

  • class
  • id
  • style
  • title
  • xml:lang
  • for
  • accesskey
  • onfocus
  • onblur

<input />Adauga o casuta in formular, specificata la atributul „type”.

  • class
  • id
  • style
  • title
  • xml:lang
  • name
  • value
  • checked
  • disabled
  • readonly
  • size
  • maxlenght
  • src
  • alt
  • usemap
  • tabindex
  • accesskey
  • accept
  • onfocus
  • onblur
  • onselect
  • onchange

<select> </select>Creaza o lista de selectare optiuni. Aceste optiuni sunt adaugate cu tag-ul <option>.

  • class
  • id
  • style
  • title
  • xml:lang
  • name
  • disabled
  • multiple
  • size
  • tabindex
  • onfocus
  • onblur
  • onchange

<option> </option>Adauga lista cu optiuni in tag-ul <select>.

  • class
  • id
  • style
  • title
  • xml:lang
  • disabled
  • selected
  • label
  • value

<textarea> </textarea>Creaza un camp pentru adaugare de text.

  • class
  • id
  • style
  • title
  • xml:lang
  • name
  • disabled
  • rows
  • cols
  • readonly
  • tabindex
  • accesskey
  • onfocus
  • onblur
  • onchange
  • onselect

– Alte tag-uri

<img />Include o imagine in documentul XHTML.

  • class
  • id
  • style
  • title
  • src
  • alt
  • height
  • width
  • xml:lang
  • longdesc
  • usemap
  • ismap

<script> </script>Folosit pentru a adauga un script in document, de obicei JavaScript.

  • type
  • src
  • defer
  • charset
  • xml:lang

<noscript> </noscript>Afiseaza textul din el daca browserul nu stie sa lucreze cu un anumit script.

  • class
  • id
  • style
  • title
  • xml:lang

HTML5

Noile caracteristici adaugate in HTML5 sunt bazate pe HTML, CSS, DOM, si JavaScript; si reduc necesitatea plugin-urilor externe (precum Flash).

Despre sintaxa HTML5

Sintaxa HTML5 este compatibila cu HTML4 si XHTML.
– Puteti inchide elementele ce au un singur tag (META, BR, HR, INPUT, IMG) cu slash, <tag />, precum in XHTML; sau puteti sa le lasati fara sa le adaugati slash, <tag>.
– Puteti folosi litere mici, sau /si litere mari, pentru numele tag-urilor si atribute.
Astfel, toate variantele urmatoare sunt valide HTML5:

<meta charset="utf-8">
     Sau, inchis cu slash:
     
<meta charset="utf-8" />
<img src="image.jpg" alt="Text oarecare">
    Sau:
<img src="image.jpg" alt="Text oarecare" />
    Sau, cu litere mari:
<IMG src="image.jpg" ALT="Text oarecare">
<br>
    Sau:
<BR>
    Sau:
<br />


– In HTML5 puteti alege sa specificati sau nu atributul type in elementele <script>, and <style>, acesta a devenit optional:

<script type="text/javascript"><!--
  // Cod JavaScript
--></script>
    Sau:
<script><!--
  // Cod JavaScript
--></script>
<style type="text/css">
  /* Cod CSS */
</style>
    Sau:
<style>
  /* Cod CSS */
</style>

• Toate aceste variante sunt valide in HTML5, dar, ca o buna practica, este indicat sa folositi sintaxa XHTML; adica sa folositi litere mici, sa adaugati slash-ul de inchidere, si sa specificati atributul „type” in tag-urile <script>, si <style>.

Structura HTML5

Doctype in HTML5 e mai simplu:

<!doctype html>

Tag-ul Meta charset e mai simplu:

<meta charset="utf-8">


Div-urile sunt acum folosite petru stil si design, nu mai sunt necesare pentru structura; HTML5 include mai multe elemente noi pentru structurare, care ajuta la definirea si organizarea diferitelor parti in document.
Acestea sunt principalele elemente de structura care sunt folosite mai des in HTML5:

  • <header> – e folosit pentru a defini titluri (si sub-titluri), sau meniu de navigare in site. Poate fi adaugat direct in BODY, sau in <article>, ori <section>.
    – De obicei in acest element se adauga tag-uri H1, H2, Hx, sau <nav> cu principalele link-uri.
  • <footer> – reprezinta subsolul paginii sau a unui <section>, ori <article>; poate contine informatii despre autor, copyright, etc.
  • <section> – representa o sectiune distincta a documentului sau aplicatiei. Se foloseste pentru a grupa logic structura documentului.
    Poate contine header, articles, meniu de navigare si footer.
  • <nav> – in acest tag se adauga meniul de navigare in paginile site-ului. Acest element ar trebui folosit doar pentru link-uri grupate intr-un meniu.
    Daca aveti un <footer> cu link-uri de navigare in site, nu mai e necesar sa le adaugati si in <nav>, deoarece <footer> e suficient.
  • <article> – se foloseste pentru a defini un element independent in pagina (sau in <section>), si poate contine articole de stiri, postari de blog, comentarii, sau alt continut cu text si imagini.
  • <aside> – poate fi folosit ca sa defineasca o zona laterala, sau alt continut care e considerat intr-un fel separat de continutul din jurul lui. Un exemplu ar fi, banner sau publicitate.
  • <hgroup> – se foloseste pentru a grupa un set de doua sau mai multe elemente H1, H2, H3, …, cand avem de exemplu un titlu si subtitluri


HTML5 vine si cu alte elemente interesante, precum <video> si <audio>, plus alte tag-uri si atribute noi si modificate, dar acest curs prezinta principalele elemente de baza, ca sa intelegeti noua structura in HTML5, si sa treceti rapid de la HTML4 sau XHTML la HTML5.

Toate principalele browsere (Safari, Chrome, Firefox, Opera, Internet Explorer) continua sa adauge noile caracteristici HTML5 in ultimile lor versiuni, dar multi utilizatori inca folosesc versiuni de browser web ce nu recunosc noile elemente HTML5, precum IE7, IE8. In acest caz exista o solutie JavaScript, un script extern, html5.js (gazduit de un proiect Google) care face browser-ul IE sa recunoasca noua structura din HTML5.
Este recomandat sa includeti acest script in sectiunea HEAD a documentului HTML5, folosind acest cod:

<!–[if IE]><script src=”http://html5shiv.googlecode.com/svn/trunk/html5.js”></script><![endif]–>

Si urmatorul cod CSS, care face ca tag-urile specificate sa fie afisate ca elemente de tip bloc:

<style>header, footer, section, aside, nav, article {display: block;}</style>


Iata o structura comuna a unei pagin cu HTML5, ce contine un header in partea de sus a paginii (cu u meniu in el), o sectiune in partea stanga (cu un meniu de navigare „aside” pt. banner), o alta sectiune (cu Header, 2 articole si footer), si un footer in subsolul paginii (click pe imagine):


Puteti folosi tag-urile pentru structurare cu atributele „id” si „class”, precum si <div>, <span>, <p>, si alte tag-uri HTML pentru design si organizare /aranjare continut in documentul HTML.
Mai jos sunt codurile HTML5 si CSS pentru a crea o pagina web bazata pe structura din imaginea de mai sus:

Document HTML5

<!doctype html>
<html>
<head>
 <meta charset="utf-8" />
 <title>Web Development Cursuri si Tutoriale</title>
 <meta name="description" content="Examplu document in HTML5, template, cursuri si tutoriale" />
<meta name="keywords" content="html5, tutoriale html5, cursuri" />
 <!--[if IE]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
 <link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<header id="page_header">
 <h1>Web Development Cursuri si Tutoriale</h1>
 <nav>
  <ul>
   <li><a href="http://www.discant.ro/" title="Home">Home</a></li>
   <li><a href="http://www.discant.net/" title="Cursuri Web">Cursuri Web</a></li>
   <li><a href="http://www.discant.ro/forum/">Forum</a></li>
   <li><a href="../../coment/contact.php" title="Contact">Contact</a></li>
  </ul>
 </nav>
</header>
<section id="posts">
 <header id="posts_header">
  <h2>Tutoriale HTML5</h2>
 </header>
 <article class="post">
  <header>
   <h3>Invata rapid HTML5</h3>
  </header>
   <div class="ctext">
    Invata despre noile caracteristici din HTML5.<br />
    Tag-uri noi, si elemente pentru structura.
   </div>
   <aside class="post_baner">Aici poate fi un banner</aside>
   <p>
    Noile caracteristici din <b>HTML5</b> sunt bazate pe HTML, CSS, DOM, si JavaScript; si reduc necesitatea plugin-urilor externe (precum Flash).<br />
    Multe alte noi caracteristici HTML5 sunt centrate pe crearea unei mai bune platforme pentru aplicatiile web, <a href="http://www.discant.ro/html/tutorial-html5.html" title="Tutorial HTML5">Cititi mai mult</a> ...
   </p>
 </article>
 <article class="post">
  <header>
   <h3>Elemente si attribute noi pentru formular in HTML5</h3>
  </header>
   <div class="ctext">
    Formularele HTML sunt folosite in general ca sa transfere date adaugate de utilizator la un script de pe server sau JavaScript, ca sa fie procesate de un limbaj de programare.
   </div>
   <p>
    HTML5 adauga mai multe tipuri de casute input noi, pentru formular (datetime, datetime-local, date, month, week, time, number, range, email, url, search, and color), <a href="http://www.discant.ro/html/html5-formular-input-atribute.html" title="Elemente de formular noi">Cititi mai mult</a> ...
   </p>
 </article>
 <footer id="post_footer">
  <p>Mai multe lectii si tutoriale HTML: <a href="http://www.discant.ro/html/" title="Curs HTML">Curs HTML</a>.</p>
 </footer>
</section>
<section id="sidebar">
 <nav>
  <ul>
   <li><a href="http://www.discant.ro/html/" title="Curs HTML">Curs HTML</a></li>
   <li><a href="http://www.discant.ro/curs_css/" title="Curs CSS">Curs CSS</a></li>
   <li><a href="http://www.discant.ro/javascript/" title="JavaScript">JavaScript</a></li>
   <li><a href="http://www.discant.ro/php-mysql/" title="PHP-MySQL">PHP-MySQL</a></li>
   <li><a href="http://www.discant.ro/flash/" title="Flash-ActionScript 3">Flash-ActionScript 3</a></li>
   <li><a href="http://www.discant.ro/jocuri/" title="Jocuri Flash">Jocuri Flash</a></li>
  </ul>
 </nav>
 <aside class="sidebar_baner">Banner in sidebar</aside>
</section>
<footer id="page_footer">
 <p>De la: <a href="http://www.discant.ro/" title="Cursuri gratuite, Jocuri, Anime">www.discant.ro</a></p>
</footer>
</body>
</html>

Cod CSS, in fisierul style.css

body {
 width: 99%;
 margin: 2px auto;
 font-family: Arial, "MS Trebuchet", sans-serif;
 text-align: center;
}
header, footer, section, aside, nav, article { display: block; }
header#page_header {
 width: 100%;
 margin: 4px auto;
 border: 2px solid blue;
}
header#page_header nav ul {
 list-style: none;
 margin: 0;
 padding: 0;
}
#page_header nav ul li {
 display:inline;
 margin: 0 20px 0 0;
 padding: 1px;
}
section#posts {
 float: right;
 width: 79%;
 background-color: #f1f2fe;
 border: 1px solid yellow;
}
section#posts header#posts_header {
 background-color: #abcdef;
 border: 1px solid green;
}
article.post {
 margin:10px;
 background-color: yellow;
 text-align: left;
}
article.post aside {
 float: right;
 margin-top: -58px;
 width: 250px;
 height: 120px;
 background-color: #fefefe;
}
article.post p { clear: right;}
section#sidebar {
 float: left;
 width: 18%;
 background-color: #d7d8fe;
 border: 1px solid green;
 padding:5px;
}
section#sidebar nav ul {
 margin: 3px auto;
 text-align: left;
 padding: 0 0 0 15;
}
section#sidebar aside {
 width: 160px;
 height: 250px;
 margin: 10px auto;
 background-color: #fefefe;
}
footer#page_footer {
 clear: both;
 width: 100%;
 margin: 4px auto;
 border: 2px solid blue;
}


Aceste reguli CSS sunt salvate intr-un fisier extern, denumit „style.css”, si este inclus in pagina HTML cu urmatorul cod adaugat in sectiunea HEAD.

<link rel="stylesheet" type="text/css" href="style.css" />

Pentru a crea pagini web cu HTML5, ar trebui sa cunoasteti si CSS.

Ca sa vedeti cum apare pagina web creata cu exemplu prezentat mai sus scrieti codul.

HTML5 – Tag-uri Noi

Dupa mai multi ani de experienta cu HTML 4 si XHTML, HTML5 a venit cu tag-uri noi pentru o mai buna structra a documentului si a formularelor, pentru desen si continut multimedia.
Multe din noile elemente HTML5 nu sunt inca suportate de principalele navigatoare web, dar treptat acestea implementeaza noile caracteristici din HTML5.
In acest curs sunt prezentate cateva din noile tag-uri HTML5 suportate in principalele navigatoare web, cu o scurta descriere si exemple de cod.

HTML5 audio tag

Tag-ul <audio> se foloseste pt. a adauga sunet, muzica in pagina web.
Poate folosi aceste atribute:

  • autoplay (autoplay=”autoplay”) – Sunetul, muzica va incepe automat.
  • controls (controls=”controls”) – Controalele audio (play / pauza, etc.) vor fi afisate.
  • loop (loop=”loop”) – Muzica va incepe din nou dupa ce se termina.
  • preload (preload=”auto|metadata|none”) – Specifica daca si cum va fi incarcat fisierul audio cand pagina se incarca. Atributul „preload” este ignorat daca se adauga „autoplay”.
    („auto” – incarca tot fisierul audio cand pagina se incarca; „metadata” – incarca numai metadata cand pagina se incarca; „none” – browser-ul nu ar trebui sa incarce fisierul audio cand se incarca pagina).
  • src (src=”url”) – Adresa URL a fisierului audio.

Elementul <audio> foloseste tag-ul <source> ca sa specifice sursa fisierului audio si fisiere alternative pentru diferentele dintre navigatoarele web, bazate pe tipul de codec recunoscut.
IE9 si Safari folosesc fisiere MP3; Firefox, Chrome si Opera folosesc tipul OGG (sau OGV).
– Exemplu:

<audio controls="controls">
 <source src="audio_file.ogg" type="audio/ogg" />
 <source src="audio_file.mp3" type="audio/mp3" />
 Browser-ul dv. nu recunoste tag-ul audio, dar puteti <a href="audio_file.mp3">Descarca fisierul</a>.
</audio>

– Textul dintre <audio> si </audio> va fi afisat in navigatoarele web care nu recunosc tag-ul audio. In exemplu de mai sus, daca browser-ul nu recunoste tag-ul <audio>, va fi afisat in acel loc un link de download.
Rezultat:

Browser-ul dv. nu recunoste tag-ul audio, dar puteti .

HTML5 video tag

Tag-ul <video> este un element multimedia folosit pt. a adauga in pagina web video clipuri si alt continut video.
Tag-ul HTML5 <video> poate folosi aceste atribute:

  • autoplay (autoplay=”autoplay”) – Filmul /videoclip-ul va incepe automat.
  • controls (controls=”controls”) – Butoanele de control (play / pauza, etc.) vor fi afisate.
  • height (height=”pixeli”) – Inaltimea player-ului, in pixeli.
  • width (width=”pixeli”) – Lungimea player-ului, in pixeli.
  • muted (muted=”muted”) – Sunetul din film va fi pe mut, nu e redat.
  • poster (poster=”URL”) – Specifica o imagine care sa fie afisata in timp ce filmul se incarca, sau pana cand e apasat butonul play. Daca acest atribut nu e adaugat, va fi afisat primul cadru din film.
  • loop (loop=”loop”) – Filmul va porni de la inceput dupa ce se termina.
  • preload (preload=”auto|metadata|none”) – Specifica daca si cum va fi incarcat filmul cand pagina se incarca. Atributul „preload” este ignorat daca se adauga „autoplay”.
    („auto” – incarca tot fisierul video cand pagina se incarca; „metadata” – incarca numai metadata cand pagina se incarca; „none” – browser-ul nu ar trebui sa incarce filmul cand se incarca pagina).
  • src (src=”url”) – Adresa URL a fisierului video.

Elementul <video> foloseste tag-ul <source> ca sa specifice sursa fisierului video si fisiere alternative pentru diferentele dintre navigatoarele web, bazate pe tipul de codec recunoscut.
IE9 si Safari folosesc fisiere MP4; Firefox, Chrome si Opera folosesc tipul OGG (sau OGV)
– Exemplu:

<video controls="controls"width="200" height="150">
 <source src="video/video_file.mp4" type="video/mp4" />
 <source src="video/video_file.ogg" type="video/ogg" />
 Browser-ul dv. nu recunoste tag-ul video, dar puteti <a href="video/video_file.mp4">Descarca filmul</a>.
</video>

– Textul dintre <video> si </video> va fi afisat in navigatoarele web care nu recunosc tag-ul video. In exemplu de mai sus, daca browser-ul nu recunoste tag-ul <video>, va fi afisat in acel loc un link de download.
Rezultat:

Browser-ul dv. nu recunoste tag-ul video, dar puteti .

HTML5 embed tag

Tag-ul <embed> se foloseste pentru a adauga in pagina aplicatii cu continut interactiv, cum sunt prezentarile flash SWF, plug-inuri, sau fisiere cu imagini.
Poate sa foloseasca aceste atribute:

  • height (height=”pixeli”) – Inaltimea cadrului in care e afisat continutul, in pixeli.
  • width (width=”pixeli”) – Lungimea cadrului in care e afisat continutul, in pixeli.
  • type (type=”MIME_type”) – Tipul MIME al continutului.
  • src (src=”url”) – Adresa URL a fisierului.

Exemplu:

<embed src="flash_game.swf" width="150" height="150" />

Rezultat:

Tag-ul canvas

Elementul <canvas> poate fi utilizat ca sa adauge in pagina desene grafice folosind script-uri (de obicei JavaScript), sau compozitii foto si animatii simple.
Atribute:

  • height (height=”pixeli”) – Lungimea cadrului canvas, in pixeli.
  • width (width=”pixeli”) – Inaltimea cadrului canvas, in pixeli.

– Exemplu (creaza un patrat albastru):

<canvas id="cvs1" width="88" height="88">
 Acest text e afisat daca browser-ul nu recunoste elementul HTML5 Canvas.
</canvas>
<script type="text/javascript">
var canvas=document.getElementById('cvs1');
var ctx=canvas.getContext('2d');
ctx.fillStyle='#0102fe';
ctx.fillRect(0,0,80,80);
</script>

– Textul dintre <canvas> si </canvas> va fi afisat daca navigatorul web nu recunoaste canvas.
Rezultat:

HTML5 figure tag

Tag-ul <figure> se foloseste pentru a adauga in pagina un grup de elemente care au un contint de sine statator, cum ar fi diagrame, poze, cod, etc. Continutul din elementul <figure> e atasat la derularea paginii, dar pozitia lui este independenta. Dace e sters nu ar trebui sa afecteze cursul paginii.
Tag-ul <figure> poate sa contina elementul <figcaption> ca sa adauge o scurta descriere la ceea ce e adaugat in <figure> .
– Exemplu:

<figure>
 <img src="html_course.jpg" alt="Curs HTML" width="200" height="100" />
 <figcaption>Curs HTML: www.discant.ro/html/</figcaption>
</figure>

Rezultat:

Curs HTMLCurs HTML: www.discant.ro/html/

HTML5 hgroup tag

Tag-ul <hgroup> se foloseste pentru a grupa mai multe tag-uri H1 – H6.
– Exemplu:

<hgroup>
 <h2>Bine ai venit pe www,narplo.net</h2>
 <h3>Cursuri gratuite, Jocuri, Anime</h3>
</hgroup>
<p>Restul continutului...</p>

HTML5 mark tag

Tag-ul <mark> defineste un text marcat, se foloseste cand doriti sa scoateti in evidenta parti din text,
– Exemplu:

<p>Cursuri gratuite si tutoriale: <mark>www.discant.ro</mark> pt. Web Development.</p>

Rezultat:

Cursuri gratuite si tutoriale: www.Discant.ro pt. Web Development.

Tag-ul progress

Elementul <progress> adauga in pagina o bara de progres. De obicei e folosit impreuna cu script-uri JavaScript.
Poate folosi aceste atribute:

  • max (max=”nr”) – Specifica totalul de unitati din bara de progres.
  • value (value=”nr”) – Specifica numarul de unitati completate din bara de progres.

– Exemplu:

<progress value="33" max="100"></progress>

Rezultat:

Tag-ul ruby

Elementul <ruby> specifica o adnotare rubin. Adnotarile Ruby sunt folosite in scrierile din Asia de Est, pentru a arata pronuntia caracterelor est-asiatice.
Acest tag se foloseste impreuna cu tag-urile <rt> si <rp>.
– <rt> – defineste o explicatie sau pronuntia caracterelor dintr-o adnotare rubin.
– <rp> – defineste ce sa afiseze daca navigatorul web nu recunoaste elementul <ruby>.
Exemplu:

<ruby>
 漢 <rt><rp>(</rp>ㄏㄢˋ<rp>)</rp></rt>
</ruby>

Tag-ul WBR

Elementul <wbr> (Word Break Opportunity) specifica unde in text ar putea fi adaugat rand nou, indica: „Browser-ul poate adauga aici un rand nou daca e necesar„. Daca browser-ul nu considera ca trebuie adaugat un nou rand, nu afecteaza cu nimic.
De exemplu, se poate folosi <wbr> ca sa adauge oportunitatea de rand nou la un cuvant prea lung, sau ca sa evitati adaugarea de catre browser a unui rand nou intr-un loc nepotrivit.
Exemplu:

<p>Pentru a crea Pagini<wbr>Web profesionale, un Web<wbr>Master ar trebui sa stie HTML si CSS.</p>

HTML5 – Elemente si atribute noi in formular

Noile caracteristici adaugate in HTML5 nu sunt complet recunoscute de principalele browsere. Navigatoarele web cu cel mai bun suport pentru noile elemente din HTML5 sunt: Opera, Chrome si Mozill Firefox.

Noile tipuri de casete input in HTML5

HTML5 adauga mai multe tipuri de casute input pentru formular (datetime, datetime-local, date, month, week, time, number, range, email, url, search, si color), care sunt prezentate mai jos:

    type=”date” – Creaza o caseta de control pentru specificarea datei (an, luna, zi), precum un calendar. Valoarea initiala (adaugata in atributul „value”) trebuie sa fie furnizata in format data ISO.

<input type="date" name="set_date" value="2011-10-15" />


    type=”datetime” – Creaza o caseta input pentru data si ora, care poate fi adaugat in format ISO date/time, si e trimisa ca fiind in fusul orar UTC.

<input type="datetime" name="dt" value="2011-06-14T01:26:32:00Z" />


    type=”datetime-local” – Creaza o caseta input pentru data si ora, care poate fi adaugat in format ISO date/time, la fel ca „datetime”, dar presupunand ca timpul este cel din fusul orar local.

<input type="datetime-local" name="dtl" value="2011-06-14T01:26:32:00">


    type=”month” – Creaza o caseta input in care se poate specifica anul si luna.

<input type="month" value="2012-09" name="mnt" />


    type=”week” – o caseta input pentru anul si numarul unei anumite saptamani din an (AN-Wnr , nr e numarul saptamanii).

<input type="week" name="weeks" value="2011-W34" />


    type=”time” – creaza o casuta de formular pentru ora (ora, minute, secunde).

<input type="time" name="currenttime" value="18:12:00" />


    type=”tel” – o caseta input pentru numar de telefon.

<input type="tel" name="hometel" value="123-888-2012" />


    type=”url” – e folosit pentru campuri de formular care trebuie sa contina doar adresa URL. Valoarea din acest input e automat validata cand datele din formular sunt trimise (daca nu are un format URL valid, returneaza un mesaj de eroare).

<input type="url" name="site" size="25" value="http://www.discant.ro" />


    type=”number” – creaza casete de formular care sa contina doar numere. Se poate restrictiona numerele acceptate, cu atributele „min„, „max” si „step„.

<input type="number" name="points" min="5" max="80" />


    type=”range” – Creeaza o zona cu un cursor de control care indica o valoare dintr-o serie de numere. Numerele acceptate incep de la valoarea specificata in atributul „min” (0 default), pana la numarul specificat in atributul „max” (100 default).

<input type="range" name="val" min="1" max="10" />


    type=”email” – e folosit pentru campuri de formular care trebuie sa contina doar adresa de e-mail. Valoarea din acest input e automat validata cand datele din formular sunt trimise.

<input type="email" name="email" />


    type=”search” – Creaza un camp de text special folosit pentru cautare (de ex. cautare in site, cu un script).

<input type="search" name="srch" size="25" value="Cautare" />


    type=”color” – Creaza un camp de formular special pentru selectarea unei culori.

<input type="color" name="get_color" />

Atribute noi pentru <form> adaugate in HTML5

  • autocomplete=”on | off – Permite browser-ului sa completeze automat datele in formular (on), sau de fiecare data utilizatorul trebuie sa introduca el insusi datele (off).
    – Functioneaza cu <form>, si urmatoarele tipuri <input>: text, search, url, tel, email, password, date-pickers, range, color.
·         <form action="script.php" method="post" autocomplete="on" id="idf">
·          Name:<input type="text" name="fname" />
·          <input type="submit" value="Send" />
</form>
  • novalidate – (novalidate=”novalidate” in XHTML) – Seteaza ca formularul, sau campul input unde e adaugat, sa nu valideze automat datele cand sunt trimise.
    – Se poate adauga in <form> si in urmatoarele casete <input>: text, search, url, tel, email, password, date-pickers, range, color.
·         <form action="script.php" id="idf" novalidate="novalidate">
·          E-mail: <input type="email" name="email" />
·          <input type="submit" value="Send"/>
</form>

Atribute noi pentru input

    autofocus – (autofocus=”autofocus” in XHTML) – specifica faptul ca un camp de formular sa primeasca automat focus cand pagina e afisata. Functioneaza in toate casetele <input>.

Name: <input type="text" name="name1"  autofocus="autofocus" />


    form=”form_id – Asociaza campul input cu formularul care are id=”form_id”. Cu aceasta metoda, caseta de text nu trebuie adaugata special intr-un element form. Functioneaza in toate tipurile <input>.

<form action="script.php" method="post" id="idf">
 Name:<input type="text" name="fname" />
 <input type="submit" value="Send" />
</form>
E-mail: <input type="email" name="email" form="idf" />


    formaction=”url – Rescrie valoarea atributului „action” din <form>, trimitand datele la adresa specificata la „url”.
    formenctype=”content_type – Rescrie valoarea atributului „enctype” din <form>.
    formmethod=”get | post | put | delete – Rescrie valoarea atributului „method” din <form>. Valorile „put” si „delete” sunt noi in HTML5.
    formnovalidate – (formnovalidate=”formnovalidate” in XHTML) – Rescrie valoarea atributului „novalidate” din <form>.
    formtarget=”target – Rescrie valoarea atributului „target” din formular.
    – Aceste atribute de recriere sunt folosite doar in buton submit (type „submit” sau „image”).

<form action="script.php" method="post" id="idf">
 E-mail: <input type="email" name="email" /><br />
 <input type="submit" value="Trimite" /><br />
 <input type="submit" formaction="script_2.php" value="Trimite la script_2" /><br />
 <input type="submit" formnovalidate="formnovalidate" value="Trimite fara validare" />
</form>


    height=”pixels – Specifica inaltimea butonului imagine, cand type=”image”.
    width=”pixels – Specifica lungimea butonului imagine, cand type=”image”.
    – Aceste atribute sunt folosite doar in butoane cu type=”image”:

<input type="image" src="img_submit.gif" width="80" height="23" />


    list=”id_datalist – Indica faptul ca exista o list predefinita de optiuni pentru utilizator, care sunt furnizate de un element datalist. Valoarea atributului list („id_datalist”) este ID-ul adaugat in <datalist>.
– Poate fi utilizat cu urmatoarele tipuri de <input>: text, search, url, tel, email, datepickers, number, range, color.

Website: <input type="url" list="sites" name="link" />
<datalist id="sites">
 <option label="CoursesWeb" value="http://www.coursesweb.net" />
 <option label="Discant" value="http://www.discant.ro" />
 <option label="W3Schools" value="http://www.w3schools.com" />
</datalist>


    max=”number – specifica valoarea maxima pentru numere, aceasta trebuie sa fie mai mare (sau egala) decat valoarea adaugata in atributul „min”.
    min=”number – specifica o valoarea minima pentru numere.
    step=”any/number – specifica intervalul de numere care poate fi folosit (daca step=”3″, numerele acceptate sunt: -3,0,3,6, etc).
    – Atributele „min”, „max”, si „step” pot fi utilizate in urmatoarele casete <input> types: date-pickers, number, range.
Urmatorul cod defineste o caseta care accepta numere de la 1 la 10, cu step 3 (numere ce pot fi adaugate: 3, 6 sau 9):

<input type="number" name="num" min="1" max="10" step="3" />


    multiple – (multiple=”multiple” in XHTML) – Indica faptul ca utilizatorul poate specifica mai mult de o valoare.
– Poate fi utilizat in urmatoarele casete <input>: email, file.

<input type="file" name="img" multiple="multiple" />


    pattern=”regexp – specifica o expresie regulata folosita la validarea datelor din caseta input. Puteti adauga un atribut „title” care sa indice pe scurt formatul datelor ce trebuie adaugate.
– Poate fi utilizat in urmatoarele casete <input>: text, search, url, tel, email, password.
Codul urmator defineste un camp text in care pot fi adaugate maxim 5 caractere (doar litere si numere):

<input type="text" name="pass" pattern="[A-z0-9]{5}" title="Cinci caractere, litere si numere" />


    placeholder=”text – Furnizeaza un mic indiciu, sau exemplu care sa ajute utilizatorul sa adauge datele corecte (pentru o descriere mai lunga, se foloseste atributul „title”).
Indiciul e afisat in caseta input cand e goala, si dispare cand cursorul e in acel camp.
– Poate fi utilizat in urmatoarele casete <input>: text, search, url, tel, email, password.

<input type="search" name="src"  placeholder="Search Discant" />


    required – (required=”required” in XHTML) – indica faptul ca respectivul camp input trebuie sa fie completat inainte de a trimite datele.
– Poate fi adaugat in urmatoarele casete <input>: text, search, url, tel, email, password, date-pickers, number, checkbox, radio, file.

<input type="text" name="name1" required="required" />

Alte elemente de formular adaugate in HTML5

<datalist> … </datalist> tag

Elementul datalist trebuie sa contina un „id” si tag-uri <option> … </option>.
Creaza un meniu cu optiuni (adaugate in elementul „option”), oferind o functie de „auto-completare” in timp ce utilizatorul tasteaza in caseta input care are un atribut „list” ce face referire la „id-ul” din datalist.
Tag-ul <option> trebuie sa contina atributul „value”.
Exemplu:

Website: <input type="url" list="sites" name="link" />
<datalist id="sites">
 <option label="CoursesWeb" value="http://www.coursesweb.net" />
 <option label="Discant" value="http://www.discant.ro" />
 <option label="W3Schools" value="http://www.w3schools.com" />
</datalist>

<keygen /> tag

Elementul keygen e folosit pentru a genera doua chei (una privata, si cealalta publica) care ofera un mod mai sigur de autentificare a utilizatorului.
Cheia privata este salvata pe calculatorul client, iar cheia publica e trimisa la server.
Suportul navigatoarelor web pentru acest element nu e inca destul de bun pentru a fi utilizat ca un standard de securitate.
Exemplu:

<form action="script.php" id="idf" method="post">
 Utilizator: <input type="text" name="user" />
 Encriptare: <keygen name="security" />
 <input type="submit" value="Submit" />
</form>

<output> </output> tag

E folosit pentru a afisa rezultatul unei operatiuni de calcul, cel mai probabil rezultatul returnat de un script.

Total: <output name="total" onformchange="calc()">0</output>

– Aici, „calc()” poate fi o functie dintr-un script JavaScript.

Tutorial HTML5 canvas

·         Necesita cunostinte de JavaScript

<canvas> este unul din cele mai interesante elemente introduse in HTML5.
Tag-ul <canvas> este destul de simplu, defineste lungimea, inaltimea si un ID unic. Dar se folosesc o serie de instructiuni JavaScript (denumite generic APIs) pentru a desena obiecte in canvas.
Exemplu de mai jos arata structura de baza pentru implementare canvas intr-o pagina web:

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Titlu paginii</title>
<script type="text/javascript">
function draw() {
  // preia intr-un obiect tag-ul <canvas> 
  var canvas = document.getElementById("id_canvas");
  // daca browser-ul recunoaste canvas
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // Aplica instructiuni JavaScript (API canvas) pt. desenare
  }
}
// apeleaza functia draw() imediat ce pagina s-a incarcat
window.onload = draw;
</script>
</head>
<body>
<canvas id="id_canvas" width="200" height="200"></canvas>
</body>
</html>

– Atributele width si height specifica dimensiunile zonei CANVAS in pagina web.
– Important este ID-ul (aici „id_canvas„), acesta se foloseste in JavaScript ca sa fie preluat tag-ul <canvas> intr-un obiect (cu document.getElementById(‘ID’)), apoi se aplica functii si proprietati specifice pentru a crea desene care sunt afisate in tag-ul CANVAS.
– Metoda getContext(‘2d’) trebuie aplicata la elementul Canvas ca sa se obtina un obiect la care se aplica instructiuni API pentru crearea continutului din <canvas>.

<canvas> este un element de tip bloc, poate fi adaugat in oricare alt tag de tip bloc, precum <p>, <div>, sau in elementele noi de structura introduse in HTML5: <section>, <article>.

Desenare cu HTML5, canvas si JavaScript

Instructiunile JavaScript permit dezvoltatorilor de pagini web sa deseneze diferite forme, linii, sa aplice culori, transparenta si gradient, sa adauge text si imagini in Canvas; chiar sa creeze animatie.
  – Exemplu urmator deseneaza un patrat albastru.

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Canvas patrat albastru</title>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    ctx.fillStyle = '#0101fe';
    ctx.fillRect (50, 60, 100, 100);
  }
}
window.onload = draw;      // acceseaza functia draw() cand pagina s-a incarcat
--></script>
</head>
<body>
<canvas width="200" height="200" id="cav1"></canvas>
</body>
</html>

Rezultat:


– Sintaxa:

  • ctx.fillStyle = „Culoare” – reprezinta culoarea din interiorul formei. Se poate folosi orice metoda de definire a culorii utilizata in CSS (blue, #0000ff, #00f, sau rgb(0,0,255) ).
    Daca nu se specifica o culoare, va fi aplicat negru.
  • ctx.fillRect(X-stanga, Y-sus, lungime, inaltime) – Deseneaza patrulaterul in canvas, folosind cloarea din „fillStyle”.


Puteti crea desene mult mai complexe, combinand cercuri, linii, patrulatere, gradient, transparenta.
– Deoarece multi utilizatori inca folosesc browser care nu recunoaste elementul CANVAS, puteti adauga un text cu un mesaj de eroare pt. no-canvas, intr-un tag ascuns (cu style=”display:none;”), iar cu JavaScript faceti acest tag vizibil in cazul cand browser-ul nu recunoaste elementul canvas.

– Daca adaugati codul JavaScript dupa tag-ul <canvas>, nu mai e necesar window.onload, doar apelati simplu functia cu API-uri pt. canvas. Veti vedea in exemplele urmatoare.


Adaugare transparenta

Ca sa adaugati transparenta, definiti culoarea folosind formula:   rgba(Red, Green, Blue, Alpha). „Alpha” e o valoare intre 0 si 1 care reprezinta transparenta.
In urmatorul exemplu adaugam un dreptunghi cu Alpha 0.5. In acest caz definim culoarea din „fillStyle” pentru dreptunghi folosind rgba() pentru a specifica valoarea de transparenta ( rgba(220, 223, 0, 0.5) ).
De aseemenea, va fi adaugat un mesaj pt. no-canvas, iar codul JavaScript e scris sub tag-ul <canvas> (pt. a nu mai folosi window.onload).

<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Canvas transparenta</title>
</head>
<body>
<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    ctx.fillStyle = '#0101fe';
    ctx.fillRect (50, 60, 100, 100);
    ctx.fillStyle = "rgba(220,223,0, 0.5);";
    ctx.fillRect (90, 105, 100, 80);
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();     // apeleaza functia draw()
--></script>
</body>
</html>

Rezultat:

Desenare linii

Ca sa desenati linii se foloseste functia lineTo().

lineTo(x, y)

Aceasta metoda traseaza o linie de la punctul curent pana la coordonatele (x, y).
Pentru a seta sau muta punctul curent de inceput, se foloseste metoda moveTo().

moveTo(x, y)

– Aceasta metoda creaza, sau muta, punctul de inceput al desenarii, la coordonatele specificate.

Ca sa definiti culoarea liniei, se foloseste:     ctx.strokeStyle = „culoare”;
Pentru grosimea liniei (in pixeli), se foloseste:     ctx.lineWidth = valoare;

Urmatorul exemplu creaza trei linii.

<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // definesste culoarea si grosimea liniei
    ctx.strokeStyle = '#01da01';
    ctx.lineWidth = 3;
    // creaza prima linie
    ctx.moveTo(10, 10);           // seteaza punctul de inceput
    ctx.lineTo(100, 80);          // defineste linia
    // creaza a doua linie
    ctx.moveTo(10, 10);           // seteaza punctul de inceput
    ctx.lineTo(120, 120);         // defineste linia
    // the third line
    ctx.moveTo(10, 150);           // muta punctul de inceput
    ctx.lineTo(140, 150);
    ctx.stroke();       // adauga liniile
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();     // apeleaza functia
--></script>

Dupa ce a fost definita culoarea liniei (cu strokeStyle), si grosimea (cu lineWidth), am folosit metoda moveTo() pentru a seta punctul de inceput, apoi cu lineTo(100, 80) se creaza o linie de la acel punct curent pana la punctul dat de coordonatele (100, 80).
Acum, ultimul punct devine punctul curent de inceput, pentru a-l muta, se foloseste iar meoda moveTo().
Codul de mai sus va afisa aceste trei linii (intr-un browser Canvas-compatibil):

Desenare arce si cercuri

Pentru a desena arce de cerc si cercuri, se foloseste functia arc().

arc(x, y, raza, startUnghi, endUnghi, anticlockwise)

– Aceasta metoda deseneaza un arc de cerc intre startUnghi si endUnghi, in sens invers orelor de ceas daca argumentul anticlockwise e setat true, daca e false deseneaza in sensul orelor de ceas.
Ca sa desenati un crc, setati:   startUnghi=0, endUnghi=Math.pi*2

Dupa ce ati definit arc-ul de cerc (sau cercul) cu metoda arc(), aplicati:
    ctx.stroke();   – ca sa desenati linia de margine.
    ctx.fill();   – ca sa adaugati culoarea de umplere.

Urmatorul cod deseneaza o fata zambitoare.

<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    ctx.arc(75,75,50,0,Math.PI*2,true);     // Fata
    ctx.moveTo(110,75);
    ctx.arc(75,75,35,0,Math.PI,false);      // Gura
    ctx.moveTo(65,65);
    ctx.arc(60,65,4,0,Math.PI*2,true);     // Ochiul stang
    ctx.moveTo(95,65);
    ctx.arc(90,65,4,0,Math.PI*2,true);     // Ochiul drept
    ctx.stroke();
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();     // apeleaza functia
--></script>

Desenul incepe cu desenarea fetei, apoi se muta punctul de inceput pentru desenare gura, si traseaza alt arc de cerc, si tot asa pentru fiecare ochi. Functia moveTo() se ocupa de mutarea coordonatelor.
Rezultat:

Canvas – Text

Sunt doua metode pentru adaugare text in canvas:

  • fillText(text, x, y) – adauga textul la pozitia specificata, avand culoarea din fillStyle.
  • strokeText(text, x, y) – adauga textul la pozitia specificata, dar fara culoare de umplere, doar cu linia de margine a literelor, avand culoarea din strokeStyle.


Pentru text se pot folosi urmatoarele proprietati la obiectul context:

  • ctx.font = valoare – Specifica fontul textului, la fel ca proprietatea font-family din CSS.
  • ctx.textAlign = valoare – Specifica alinierea pe orizontala a textului, valori: „start”, „end”, „left”, „right”, „center” (default e „start”).
  • ctx.textBaseline = valoare – Specifica alinierea pe verticala a textului, valori: „top”, „hanging”, „middle”, „alphabetic”, „ideographic”, „bottom” (default e „alphabetic”).


Exemplu:

<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // creaza text cu o culoare de umplere
    ctx.fillStyle = '#00f';
    ctx.font = 'italic 30px sans-serif';
    ctx.textBaseline = 'top';
    ctx.fillText('Hy everyone', 2, 5);
    // creaza text afisat doar cu linia de margine a literelor
    ctx.font = 'bold 30px sans-serif';
    ctx.strokeText('Hy everyone', 2, 50);
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();     // apeleaza functia
--></script>

Rezultat:

Canvas – Umbre

Instrctiunile JavaScript pentru umbre contin proprietati care se aplica la obiectul context:

  • ctx.shadowColor = valoare – Seteaza culoarea umbrei.
  • ctx.shadowBlur = valoare – Seteaza „blur” la umbra, in pixels. Cu cat valoarea e mai mica, umbra e mai ascutita.
  • ctx.shadowOffsetX = valoare – Specifica distanta X, in pixeli.
  • ctx.shadowOffsetY = valoare – Specifica distanta Y, in pixeli.


Urmatorul cod deseneaza o sfera albastra, cu o umbra verde avand transparenta 0.5:

<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // seteaza proprietatile umbrei
    ctx.shadowOffsetX = 8;
    ctx.shadowOffsetY = 8;
    ctx.shadowBlur = 4;
    ctx.shadowColor = 'rgba(0, 200, 1, 0.5)';
    // defineste si adauga un cerc
    ctx.fillStyle = '#0000fe';
    ctx.arc(75,75,50,0,Math.PI*2,true);
    ctx.fill();
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();     // apeleaza functia
--></script>

Rezultat:

Canvas – Gradient

Pentru a crea culoare gradient in Canvas, se aplica un obiect CanvasGradient la proprietatile fillStyle sau /si strokeStyle.
Se pot crea doua tipuri de obiect CanvasGradient, utilizand una din urmatoarele metode:

  • gradient = context.createLinearGradient(x0, y0, x1, y1) – Returneaza un obiect CanvasGradient ce reprezinta un gradient liniar, care incepe de la punctul (x0, y0) si se termina la punctul (x1, y1).
  • gradient = context.createRadialGradient(x0, y0, r0, x1, y1, r1) – Returneaza un obiect CanvasGradient ce reprezinta un gradient radial, ca un con cu cercul mic dat de (x0, y0, re), iar cercul mare definit de (x1, y1, r1).


Dupa ce ati creat obiectul pentru gradient, puteti adauga culori in gradient, cu metoda addColorStop() aplicata acestui obiect. Urmatoarele doua coduri arata cum puteti crea si folosi gradient.
  1) Exempu cu createLinearGradient():

<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // creaza un obbiect CanvasGradient liniar
    // furnizand sursa si coordonatele de inceput si sfarsit (x0, y0, x1, y1)
    var gradient = ctx.createLinearGradient(0, 0, 150, 0);
    // Se adauga culori in gradient, primul argument specifica pozitia culorii
    // - se folosesc valori cuprinse intre 0 (gradient start) si 1 (gradient end)
    // Al doilea argument specifica culoarea, in orice format folosit si in CSS
    gradient.addColorStop(0,   '#f00');        // rosu
    gradient.addColorStop(0.4, '#ff0');        // galben
    gradient.addColorStop(0.8, '#0f0');        // verde
    gradient.addColorStop(1,   '#00f');        // albastru
    
    // Aplica gradientul la proprietatea fillStyle, si deseneaza un dreptunghi
    ctx.fillStyle = gradient;
    ctx.fillRect(0, 0, 200, 125);
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();
--></script>

Rezultat:


  2) Exemplu cu createRadialGradient():

<canvas width="200" height="200" id="cav1"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // creaza un obiect CanvasGradient radial
    // furnizeaza sursa, coordonatele de inceput, sfarsit si razele cercurilor (x0, y0, r0, x1, y1, r1)
    var gradient = ctx.createRadialGradient(70, 80, 10, 78, 75, 45);
    // Adauga culori la gradientul radial, la fel ca la cel liniar
    gradient.addColorStop(0, '#0f0');
    gradient.addColorStop(0.5, '#fff');
    gradient.addColorStop(1,   '#00f');
    
    // Aplica gradientul la proprietatea fillStyle, si deseneaza un cerc
    ctx.fillStyle = gradient;
    ctx.arc(75,75,50,0,Math.PI*2,true);
    ctx.fill();
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();
--></script>

Rezultat:

Adaugare imagini

Pentru a adauga o imagine in <canvas>, se foloseste metoda drawImage(). E o functie complexa, care foloseste trei, cinci, sau noua argumente.
Iata sintaxa cu cinci argumente:

drawImage(img_element, dx, dy, dw, dh)

– Primul argument, img_element reprezinta o referinta la imagine (obiectul JavaScript cu ea), „dx” si „dy” specifica coordonatele de destinatie in contextul canvas, „dw” si „dh” specifca lungimea si inaltimea imaginii afisate in Canvas (in caz ca doriti sa o redimensionati).
– Varianta cu noua argumente se foloseste cand doriti sa adaugati o portiune decupata din imagine. Contine inca patru argumente care definesc suprafata decupata (x0, y0, x1, y1).

In urmatorul exemplu adaugam aceasta imagine: Curs HTMLintr-un <canvas> (redimensionand-o), si un text langa ea.

<canvas width="260" height="200" id="cav1"></canvas><br />
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<img src="html_course.jpg" alt="HTML course" width="152" height="160" id="img1" />
<script type="text/javascript"><!--
function draw() {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // obtine un obiect cu imaginea, o adauga in context canvas (cu dimensiuni specificate)
    var img_elm = document.getElementById('img1');
    ctx.drawImage(img_elm, 0, 0, 95, 100);
    // adauga un text fara culoare de umplere
    ctx.font = 'bold 25px sans-serif';
    ctx.textBaseline = 'top';
    ctx.strokeText('HTML Course', 98, 38);
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw();
--></script>

Rezultat:


• Elementul <canvas> poate fi si interactiv, sa raspunda la actiunile utilizatorului, efectuate cu mouse-ul sau tastatura.
– In urmatorul exemplu se folosesc evenimentele: „onmouseover”, „onmouseout”, si „onclick” pentru a schimba culoarea unui dreptunghi in <canvas>.

<canvas width="121" height="81" id="cav1" onmouseover="draw('#fefe01');" onmouseout="draw('#01de02');" 
onclick="draw('#fe0708');" style="cursor:pointer;"></canvas>
<p id="no_cav" style="display:none;">Folositi un browser compatibil-Canvas ca sa vedeti aceasta zona.</p>
<script type="text/javascript"><!--
function draw(clr) {
  var canvas = document.getElementById('cav1');
  if (canvas.getContext) {
    var ctx = canvas.getContext('2d');
    // deseneaza un dreptunghi, cu o culoare preluata din parametru "clr"
    ctx.fillStyle = clr;
    ctx.fillRect (0, 0, 120, 80);
  }
  else {
    // face vizibil tag-ul cu text pt. no-canvas
    document.getElementById('no_cav').style.display = 'block';
  }
}
draw('#0102fe');        // apeleaza functia
--></script>

Proprietatea „fillStyle” foloseste o culoare preluata din parametru „clr”, astfel, cand functia e apelata cu o culoare diferita la argument, afiseaza un dreptunghi cu alta culoare.
Ca sa vedeti efectul, pozitionati mouse-ul deasupra dreptunghiului si apasati click pe el.


Sunt mai multe proprietati si metode JavaScript pentru Canvas.

Coduri culori pentru site

Aici gasiti un tabel cu mai multe culori ce pot fi utilizate in designul paginilor web, prin cod HTML si CSS, dar si in alte aplicatii cum ar fi editoare de imagini sau flash.
Fiecare culoare are 3 reprezentari: Denumirea (in engleza), Cod Hexazecimal (perechi de numere de la 0 la 9 si litere de la A la F), Cod Decimal (numere de la 0 la 255).
Astfel, puteti utiliza o culoare folosind oricare din cele 3 reprezentari. Daca nu stiti cum, studiati exemplele urmatoare:

De exemplu, daca doriti sa folositi intr-un stil o nuanta de albastru deschis (luam DeepSkyBlue), puteti adauga intr-un cod CSS una din urmatoarele expresii, folosind denumirea culorii, codul hexa sau cel decimal (pentru hexadecimal se adauga in fata caracterul # iar pentru decimal se foloseste sintaxa rgb(r, g, b); )

color: DeepSkyBlue;

color: #00BFFF;

color: rgb(0, 191, 255);


In general asa se folosesc aceste coduri de culori, de exemplu, pentru cod HTML la „font” (aici nu se foloseste decimal):

<font color=”DeepSkyBlue„>Text de culoare DeepSkyBlue</font>
<font color=”#00BFFF„>Text de culoare DeepSkyBlue</font>


Iata inca un exemplu pt. CSS, cu proprietatea „background-color”, de data asta o culoare spre verde (am ales SpringGreen)

background-color: SpringGreen;

background-color: #00FF7F;

background-color: rgb(0, 255, 127);

Tabel Culori
Nume culoare (en.)Cod Hexadecimal
R   G   B
Cod Decimal
R   G   B
Culori cu fond Rosu
IndianRedCD 5C 5C205 92 92
LightCoralF0 80 80240 128 128
SalmonFA 80 72250 128 114
DarkSalmonE9 96 7A233 150 122
LightSalmonFF A0 7A255 160 122
CrimsonDC 14 3C220 20 60
RedFF 00 00255 0 0
FireBrickB2 22 22178 34 34
DarkRed8B 00 00139 0 0
Culori cu fond Roz
PinkFF C0 CB255 192 203
LightPinkFF B6 C1255 182 193
HotPinkFF 69 B4255 105 180
DeepPinkFF 14 93255 20 147
MediumVioletRedC7 15 85199 21 133
PaleVioletRedDB 70 93219 112 147
Culori cu fond Portocaliu
LightSalmonFF A0 7A255 160 122
CoralFF 7F 50255 127 80
TomatoFF 63 47255 99 71
OrangeRedFF 45 00255 69 0
DarkOrangeFF 8C 00255 140 0
OrangeFF A5 00255 165 0
Culori cu fond Galben
GoldFF D7 00255 215 0
YellowFF FF 00255 255 0
LightYellowFF FF E0255 255 224
LemonChiffonFF FA CD255 250 205
LightGoldenrodYellowFA FA D2250 250 210
PapayaWhipFF EF D5255 239 213
MoccasinFF E4 B5255 228 181
PeachPuffFF DA B9255 218 185
PaleGoldenrodEE E8 AA238 232 170
KhakiF0 E6 8C240 230 140
DarkKhakiBD B7 6B189 183 107
Culori cu fond Purpuriu (mov)
LavenderE6 E6 FA230 230 250
ThistleD8 BF D8216 191 216
PlumDD A0 DD221 160 221
VioletEE 82 EE238 130 238
OrchidDA 70 D6218 112 214
FuchsiaFF 00 FF255 0 255
MagentaFF 00 FF255 0 255
MediumOrchidBA 55 D3186 85 211
MediumPurple93 70 DB147 112 219
BlueViolet8A 2B E2138 43 226
DarkViolet94 00 D3148 0 211
DarkOrchid99 32 CC153 50 204
DarkMagenta8B 00 8B139 0 139
Purple80 00 80128 0 128
Indigo4B 00 8275 0 130
Nume culoare (en.)Cod Hexadecimal   RGBCod Decimal   RGB
Culori cu fond Verde
GreenYellowAD FF 2F173 255 47
Chartreuse7F FF 00127 255 0
LawnGreen7C FC 00124 252 0
Lime00 FF 000 255 0
LimeGreen32 CD 3250 205 50
PaleGreen98 FB 98152 251 152
LightGreen90 EE 90144 238 144
MediumSpringGreen00 FA 9A0 250 154
SpringGreen00 FF 7F0 255 127
MediumSeaGreen3C B3 7160 179 113
SeaGreen2E 8B 5746 139 87
ForestGreen22 8B 2234 139 34
Green00 80 000 128 0
DarkGreen00 64 000 100 0
YellowGreen9A CD 32154 205 50
OliveDrab6B 8E 23107 142 35
Olive80 80 00128 128 0
DarkOliveGreen55 6B 2F85 107 47
Aquamarine7F FF D4127 255 212
MediumAquamarine66 CD AA102 205 170
DarkSeaGreen8F BC 8F143 188 143
LightSeaGreen20 B2 AA32 178 170
DarkCyan00 8B 8B0 139 139
Teal00 80 800 128 128
Culori cu fond Albastru
Aqua00 FF FF0 255 255
Cyan00 FF FF0 255 255
LightCyanE0 FF FF224 255 255
PaleTurquoiseAF EE EE175 238 238
Turquoise40 E0 D064 224 208
MediumTurquoise48 D1 CC72 209 204
DarkTurquoise00 CE D10 206 209
CadetBlue5F 9E A095 158 160
SteelBlue46 82 B470 130 180
LightSteelBlueB0 C4 DE176 196 222
PowderBlueB0 E0 E6176 224 230
LightBlueAD D8 E6173 216 230
SkyBlue87 CE EB135 206 235
LightSkyBlue87 CE FA135 206 250
DeepSkyBlue00 BF FF0 191 255
DodgerBlue1E 90 FF30 144 255
CornflowerBlue64 95 ED100 149 237
MediumSlateBlue7B 68 EE123 104 238
RoyalBlue41 69 E165 105 225
Blue00 00 FF0 0 255
MediumBlue00 00 CD0 0 205
DarkBlue00 00 8B0 0 139
Navy00 00 800 0 128
MidnightBlue19 19 7025 25 112
Nume culoare (en.)Cod Hexadecimal   RGBCod Decimal   RGB
Culori cu fond Maro
CornsilkFF F8 DC255 248 220
BlanchedAlmondFF EB CD255 235 205
BisqueFF E4 C4255 228 196
NavajoWhiteFF DE AD255 222 173
WheatF5 DE B3245 222 179
BurlyWoodDE B8 87222 184 135
TanD2 B4 8C210 180 140
RosyBrownBC 8F 8F188 143 143
SandyBrownF4 A4 60244 164 96
GoldenrodDA A5 20218 165 32
DarkGoldenrodB8 86 0B184 134 11
PeruCD 85 3F205 133 63
ChocolateD2 69 1E210 105 30
SaddleBrown8B 45 13139 69 19
SiennaA0 52 2D160 82 45
BrownA5 2A 2A165 42 42
Maroon80 00 00128 0 0
Culori cu fond Alb
WhiteFF FF FF255 255 255
SnowFF FA FA255 250 250
HoneydewF0 FF F0240 255 240
MintCreamF5 FF FA245 255 250
AzureF0 FF FF240 255 255
AliceBlueF0 F8 FF240 248 255
GhostWhiteF8 F8 FF248 248 255
WhiteSmokeF5 F5 F5245 245 245
SeashellFF F5 EE255 245 238
BeigeF5 F5 DC245 245 220
OldLaceFD F5 E6253 245 230
FloralWhiteFF FA F0255 250 240
IvoryFF FF F0255 255 240
AntiqueWhiteFA EB D7250 235 215
LinenFA F0 E6250 240 230
LavenderBlushFF F0 F5255 240 245
MistyRoseFF E4 E1255 228 225
Culori cu fond Gri
GainsboroDC DC DC220 220 220
LightGreyD3 D3 D3211 211 211
SilverC0 C0 C0192 192 192
DarkGrayA9 A9 A9169 169 169
Gray80 80 80128 128 128
DimGray69 69 69105 105 105
LightSlateGray77 88 99119 136 153
SlateGray70 80 90112 128 144
DarkSlateGray2F 4F 4F47 79 79
Black00 00 000 0 0

Caractere speciale – Entitati HTML

In tabelul din aceasta pagina este o lista cu mai multe caractere speciale (simboluri, diacritice si caractere specifice altor limbi straine) si codurile lor specifice HTML si ISO.
Aceste caractere pot fi adaugate si afisate corespunzator in orice pagina web, putand fi introduse cu aceste coduri cunosute si cu denumirea de Entitati HTML.
De exemplu:
    – ca sa afisati in pagina simbolul © (copyright) se adauga codul &copy; (sau codul ISO &#169;)
    – ca sa afisati in pagina simbolul ½ (jumatate) se adauga codul &frac12; (sau codul ISO &#189;)
    – pentru caracterul < (mai mic), ca browser-ul sa nu-l confunde cu inceputul de tag, se poate folosi codul &lt;

NumeSintaxaNume ISO Latin-1Descriere
Aacute&Aacute&#193A ascutit (Á)
aacute&aacute;&#225;a ascutit (á)
Acirc&Acirc;&#194;A circumflex (Â)
acirc&acirc;&#226;a circumflex (â)
acute&acute;&#180;accent grav (´)
AElig&AElig;&#198;ligatura AE (Æ)
aelig&aelig;&#230;ligatura ae (æ)
Agrave&Agrave;&#192;A grav (À)
agrave&agrave;&#224;a grav (à)
amp&amp;&#38;ampersand (&)
Aring&Aring;&#197;A cu inel (Å)
aring&aring;&#229;a cu inel (å)
Atilde&Atilde;&#195;A tilda (Ã)
atilde&atilde;&#227;a tilda (ã)
Auml&Auml;&#196;A umlaut (Ä)
auml&auml;&#228;a umlaut (ä)
brvbar&brvbar;&#166;bara intrerupta (¦)
Ccedil&Ccedil;&#199;C sedila (Ç)
ccedil&ccedil;&#231;c sedila (ç)
cent&cent;&#162;cent (¢)
copy&copy;&#169;copyright (©)
curren&curren;&#164;valuta generala (¤)
deg&deg;&#176;grad (°)
div&div;
&divide;
&#247;impartire (÷)
Eacute&Eacute;&#201;E ascutit (É)
eacute&eacute;&#233;e ascutit (é)
Ecirc&Ecirc;&#202;E circumflex (Ê)
ecirc&ecirc;&#234;e circumflex (ê)
Egrave&Egrave;&#200;E grav (È)
egrave&egrave;&#232;e grav (è)
emdash&emdash;nedefinitem dash (&emdash)
emsp&emsp;nedefinitem spatiu ( )
endash&endash;nedefiniten dash (&endash;)
ensp&ensp;nedefiniten spatiu ( )
ETH&ETH;&#208;Eth nordic (Ð)
eth&eth;&#240;eth nordic (ð)
Euml&Euml;&#203;E umlaut (Ë)
euml&euml;&#235;e umlaut (ë)
frac12&frac12;&#189;jumatate (½)
frac14&frac14;&#188;sfert (¼)
frac34&frac34;&#190;trei sferturi (¾)
gt&gt;nedefinitmai mare decât (>)
Iacute&Iacute;&#205;I ascutit (Í)
iacute&iacute;&#237;i ascutit (í)
Icirc&Icirc;&#206;I circumflex (Î)
icirc&icirc;&#238;i circumflex (î)
iexcl&iexcl;&#161;exclamatie inversata (¡)
Igrave&Igrave;&#204;I grav (Ì)
igrave&igrave;&#236;i grav (ì)
iquest&iquest;&#191;intrebare inversata (¿)
Iuml&Iuml;&#207;I umlaut (Ï)
iuml&iuml;&#239;i umlaut (ï)
laquo&laquo;&#171;paranteza unghiularã dublã stângã («)
lt&lt;&#60;mai mic decât (<)
macr&macr;&#175;macron ( ¯ )
micro&micro;&#181;micro (µ)
middot&middot;&#183;punct la mijloc (·)
nbsp&nbsp;&#160;spatiu nonbreaking
not&not;&#172;negatie (¬)
Ntilde&Ntilde;&#209;N tilda (Ñ)
ntilde&ntilde;&#241;n tilda (ñ)
Oacute&Oacute;&#211;O ascutit (Ó)
oacute&oacute;&#243;o ascutit (ó)
Ocirc&Ocirc;&#212;O circumflex (Ô)
ocirc&ocirc;&#244;o circumflex (ô)
Ograve&Ograve;&#210;O grav (Ò)
ograve&ograve;&#242;o grav (ò)
ordf&ordf;&#170;ordinal feminin (ª)
ordm&ordm;&#186;ordinal masculin (º)
Oslash&Oslash;&#216;O tãiat (Ø)
oslash&oslash;&#248;o tãiat (ø)
Otilde&Otilde;&#213;O tilda (Õ)
otilde&otilde;&#245;o tilda (õ)
Ouml&Ouml;&#214;O umlaut (Ö)
ouml&ouml;&#246;o umlaut (ö)
para&para;&#182;paragraf (¶)
plusmn&plusmn;&#177;plus minus (±)
pound&pound;&#163;lira sterlina (£)
quot&quot;&#34;ghilimele („)
raquo&raquo;&#187;paranteza unghiularã dublã dreapta (»)
reg&reg;&#174;marca inregistrata (®)
sect&sect;&#167;semn sectiune (§)
shy&shy;&#173;soft hyphen (­)
sup1&sup1;&#185;1 superior (¹)
sup2&sup2;&#178;2 superior (²)
sup3&sup3;&#179;3 superior (³)
szlig&szlig;&#223;sharp s (ß)
THORN&THORN;&#222;Thorn nordic (Þ)
thorn&thorn;&#254;thorn nordic (þ)
times&times;&#215;inmultire (×)
trade&trade;nedefinittrademark (™)
Uacute&Uacute;&#218;U ascutit (Ú)
uacute&uacute;&#250;u ascutit (ú)
Ucirc&Ucirc;&#219;U circumflex (Û)
ucirc&ucirc;&#251;u circumflex (û)
Ugrave&Ugrave;&#217;U grav (Ù)
ugrave&ugrave;&#249;u grav (ù)
uml&uml;&#168;umlaut (¨)
Uuml&Uuml;&#220;U umlaut (Ü)
uuml&uml;&#252;u umlaut (ü)
Yacute&Yacute;&#221;Y ascutit (Ý)
yacute&yacute;&#253;y ascutit (ý)
yen&yen;&#165;yen (¥)
yuml&yuml;&#255;y umlaut (ÿ)

Similar Posts

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *