Documente Academic
Documente Profesional
Documente Cultură
1.Istoria internetului
Internetul-născut pe fondul Războiului Rece SUA-Rusia (anii 43-57) ca prim
instrument de a comunica informaţiile la distanţă.
-în ’57 sovieticii lansează SPUTNIK luând naştere cursa spaţială
-EISENHOWER solicită departamentului apărării să fondeze ARPA (Advanced
Research Project Agency);
-în ’62 ARPA demarează cercetări în domeniul transmisiunii datelor prin
calculator în vederea creării unei reţele indestructibile în caz de atac nuclear;
-în ’64 Paul Barau crează o reţea bazată pe transmiterea de mesaje prin comutare
de pachete: din motive de securitate informaţia era segmentată şi transmisă în
pachete fiind recompusă la destinaţie; dacă un nod este distrus, informaţia se
transmite pe o rută alternativa;
-în ’68 ARPA se imparte în DARPA şi ARPA NET (conectarea la distanţă,
reţeaua devine internatională)
-în ’75 ia naştere sistemul de operare UNIX (Brian Karnigham, Dennis Ritchie)
bazat pe limbajul C; calculatorul personal ALTAIR şi ca firma Microsoft (Paul
Callen);
-încă din ’73 DSPIP este propus ca standard pentru ARPANET acceptat ca
protocol în ’83;
-în ’79 apare reţeaua de cercetare USENET;
-în ’84 se introduce DNS; DNS ca şi SUN bazate pe UNIX a dus la dezvoltarea
rapidă a internetului, mai ales că în ’87 se crează NSF NET pentru a conecta
centrele cu super calculatoare.
NSF NET = organizaţie necomercială permite conectarea la internet fără
restricţiile cu caracter militar.
ARPA NET dispare în ’90.
-în ’95 accesul internet e asigurat de firme comerciale;
Primul instrument de căutare a fost ARCHIE (’90).
Tot în ’90 Team Berners Lee inventează o metodă de expediere între cercetători a
datelor ce conţin text şi imagini.
-în ’91 se lansează protocolul GOPHER;
-în ’93 apare primul browser numit Mosaic bazat pe elemente Windows ce
integrează imagini cu sunet, text;
Mosaic face ca, dacă în ’93 existau 500 de servere, în ’99 să fie circa 9,2
milioane.
-în ’95 SUN lansează JAVA, iar Microsoft INTERNET EXPLORER;
1
-în 2001 apare tehnologia wireless.
Nevoia de standardizare a generat aparţia unor organisme de standardizare dintre
care: wwwc( World Wide Web Consortium ’94), ISOC, Internet Corporation For
Assigned Names and Numbers.
URL
Obs: Conectarea la internet se face prin cablu UTP, TV, linie telefonică, Radio-
Modem, antena asincronă sau mobil.
URL=Uniform Resource Locator=o adresa unica a unei resurse web.
Conţine 4 părţi:
1) protocolul
2) locaţia
3) numele gazdei, site-ului
4) domeniul conform sintaxei
protocol://locaţia.nume_gazdă.domeniu
Exp: http://informatica.didfr.ub.ro/avizier-electronic
Protocolul reprezintă metoda de accesare a resursei şi reprezintă un set de reguli
de comunicaţie, impreuna cu descrierea formatului mesajelor ce trebuiesc
respectate de calculatoare pentru ca acestea să poată schimba informaţia.
Conform modelului de referinţă OSI există 7 nivele de comunicare,
ultimul, nivelul aplicaţie, deţine cele mai commune protocoale. Cele mai uzuale:
Bit Torrent: protocol partajare fişier e peer-to-peer.
-DNCP -POP3
-FTP -NET BIOS
-HTTP -SOOP
-INAP -TEL NET
-IRC -WAIS
-XMPP
Locaţia
www.stiinte.ub.ro/activitati
Numele gazdei : numele gazdei date de administrator
2
2.Militar(mil)
3.Educaţional(edu)
4.Comercial(com)
5.Îmbunatăţirea retelei-NET
II.Domeniul ţării:RO, FR, IT
III.Subdomeniu:UB, USU
IV.Sub-Subdomeniu:stiinte(ub.ro)
3
WWW reprezintă partea cea mai activa a internetului atat prin prisma utilizării
cât şi a dezvoltării acestuia.
Este o reţea ce stabileşte legătura între nodul internet folosind cu precădere
http pentru regăsirea de informaţii din orice domeniu:
Exp link-uri://ro.wikipedia//modelul_osi
Cum funcţioneaza serviciul www.
Browser-ul comunică prin intermediul protocolului http şi al tcpip cu un
server web.
Practic www funcţionează conform modelului CLIENT SERVER,
browser-ul fiind clientul.
Spre deosebire de ftp, http funcţionează discontinuu. Mai exact:
1. Browser-ul strabileşte o conexiune TCP/IP către server
Protocolul la nivel de aplicaţie utilizat e specificat printr-un număr de port.
(http-80)
2. Browser-ul emite o cerere http către server alcătuită din:
a) linie de cerere (REQUEST-LINE) formată dintr-o comanda http+url
specificat+versiunea protocolului http utilizată;
b) un antet (REQUEST-HEAD) cu informaţii despre cerere şi despre
clientul care execută cererea, codificat;
c) corpul cererii-documentul
Cele mai utilizate comenzi http (metode) sunt:
-get: se solicită server-ului să utilizeze resursa dată de url-ul din cerere
pentru a prelucra informaţiile transmise în corpul cererii;
-put: se solicită server-ului să utilizeze informaţiile transmise în corpul
cererii drept resursă identificată prin url-ul din cerere.
3. Server-ul primeşte cererea, o interpretează şi emite un răspuns browser-ului,
format din:
-un cod de stare (3 cifre): descrie modul de finalizare a cererii şi o scurtă
descriere a codului;
-un antet cu informaţii despre sursa solicitată;
-un corp referitor la datele care se transferă.
4
<head>
<title>
</title>
</head>
<body>
</body>
</html>
În antet este indicat a se specifica titlul+alte informaţii suplimentare
precizate de regula intr-o serie de tag-uri meta.
Meta admite atributele “name”, “content”.
Obs: Un tag este descris în mod standard prin 2 etichete pereche gen
<nume_tag>.....</nume_tag> şi pot avea o sumă de atribute care la rândul lor pot
avea o sumă de valori. Acestea (atribute+valori) fiind specificate eventual în
interiorul primului tag: <nume_tag.........>.......</nume_tag> conform sintaxei
atribut=”valoare”
Corpul documentului(<body>)
Delimitat de <body>....</body> sau dacă se folosesc cadre între
<frameset>......</frameset>.
<body> admite atributele: “background“ =“url”, bgcolor=”culoare”
Obs: ”Culoare” poate fi descrisă în cod hexagesimal RGB din 6 cifre câte 2 pt R
(red- roşu), G (green-verde), B (bleu) cu valori de la 00 (minim) la FF (maxim)
precedate de simbolul “#” (exp: #0000FF -> albastru).
Atributul “Text“ cu valoare text=culoare stabileste culoarea textului.
Similar Link, Vlink, Alink=”culoare” stabileşte culoarea pentru linkuri, linkuri
vizitate sau accesate.
Comentariile html se plasează între <!--text comentariu-> nefiind luate în
considerare de către browser.
Formatarea textului
<font> cu atributele: face = nume font (arial, etc)
size = n (de la 1 la 7)
Obs: Mărimea fontului poate fi specificată atât absolut, cât şi relativ la
dimensiunea curentă a fontului ; prin +/- n se înţelege un font cu +/- n puncte faţă
de cel la care se referă.
Obs 1: Pentru dimensiuni putem folosi puncte tipografice (pts), pixeli (px), em.
2: Fontul implicit este Times, mărime 3, black.
3: Se poate modifica dimensiunea implicită a fontului folosind <basefont
size=5>.
5
Setul de caractere
Se specifica printr-un tag meta, parametrul “charset” al câmpului “content
type” al protocolui http.
Specificarea caracterelor speciale sau care nu au corespondent pe tastatură
se poate face prin:
a) codul numeric asociat precedat de “&#” şi terminat cu “;” gen: î
echivalent cu “î”
b) referinţe speciale, precedate de “&” şi terminat cu “;”: Â
echivalent cu “â”.
Efecte asupra textului (taguri pereche)
<I> Italic
<U> Subliniat
<B> Bold
<small> mic
<big> mare
<strong> mai mare
<strike> tăiat
<em> emboss=evidenţiat
<code> tip cod</code>
<quote>
<cite>
<Q>
<blockquote>
Indicii exponenţi
1. Sup
2. Sub
<p> CO <sub>2 </sub> </p>
<p> a <sup> 2 </sup> +b <sup> 2 </sup> </p>
Text preformatat
Obs 1: Textul poate fi formatat la nivel de bloc prin <div>….</div>.
Obs 2: Gruparea mai multor elemente dîntr-un bloc şi formatarea acestora la
nivel de caracter se face prin <span>…</span>.
6
Lang=limba
Antetele paragraf au gradele de mărime şi diferentiere de la H1…H6.
Obs 3: Saltul la linia urmatoare se face prin <br>…</br>
Liste
1. ordonate
<ol>…</ol>
Atribute:
Type=1|a|A|i
2. neordonate
<ul>…</ul>
Type=disc|circle|square
Obs: O intrare intr-o listă:<li>...</li>
Atribut comun value=”nr” ce specifica valoarea de etichetare a intrării în
listă.
Liste de definiţii
<dl>...</dl>
Între acestea se introduc intrările constituite din termeni în 2 părţi:
<dt>....</dt>inline(element)
<dd>...</dd>element de formatare la nivel de bloc
Hyperlegături
Un hyperlink are 2 puncte de capăt numite ancore (sursă, destinaţie). Sunt
prezente doar în <body>.
Elementul “anchor”(A)
Atribute:
href=”url”
id sau nume=”text” sau şir de caractere
Tipuri de hyperlink-uri:
a) externă(alt document)
7
c) executabilă – similar cu b) doar că în loc de http se specifică protocolul
de acces al resursei şi adresa absolută
Exp:<A href= file://c:/index.html> către index.html din c:/adresa
</A>
<A href= ftp://go.ro/..........
Culori
-link-albastru
-vlink-link-uri vizitate(mov)
-alink-legătură activă
Lang : Pentru stabilirea limbii <lang>
Charset : set de caractere
Title : plasat în A, face ca textul specificat să apara ca etichetă la “mouse over“.
Imagini la Ancore
Pentru a se realiza un link pe o imagine folosim în locul textului uzual dintre
“ancore“ un element “image“ caruia ii precizam sursa(src = locaţia).
Fereastra de afişare
Implicit noua pagină accesată se deschide într-o fereastră nouă.
Gestiunea ferestrei de afisare se face prin specificarea unei valori a elementului
“target“.
Valorile pentru target pot fi:
blank : fereastra noua
parent : fereastra parinte
top : în fereastra cea mai sus
self
Obs 1: Un alt atribut al elementului “img“ este alt(“alternate”) – se afişează un
text în locul imaginii.
Exp: <img src=”imagini/poza-BMW.jpg alt=”poza cu un BMW”>
Obs 2: atributele “lang“ şi “dir“ ale lui “img“ controlează limba şi direcţia
textului.
8
Aliniere text - imagine
“Align“ cu valorile: “top“,“middle“,“bottom“.
Dacă textul este mai amplu acesta se poate alinia în raport cu imaginea prin
specificarea pentru “align“ a valorii “right/left“.
Obs: Controlul dimensiunilor imaginii se face specificand valoarea uzual în
pixeli pentru “hight“ şi “witgh“ (200).
Chenarul unei imagini se insereaza folosind atributul “border“.
Distantele pe orizontala/verticala pentru imagini şi text se stabilesc prin
atributele “hspace” şi “vspace”.
Controlul intreruperii textului şi revenirea la marginea din stanga ecranului
după imaginea grafica se foloseste atributul “clear“ al elementului “br“ cu
valorile right, left, all.
Sunete
Includerea unui sunet se face prin definirea unui link catre fişierul ce-l conţine.
Obs: Dacă se includ fişiere mari, încărcarea va fi lentă.
Tipuri de fişiere de sunet:
MIDI: suportate direct de browser fără a fi necesar un plug-in.
WAU: suportate direct de mai multe browsere.
AU: calitate mai slabă a sunetului.
AIF: dimensiuni mari
MP3 – MPEG : fişiere comprimate, calitate bună, dimensiune mică
MP4: necesar un plug-in.
RA, RPM, PPM: compresie mai bună decât MP3.
SWA: compresie 176:1, transmisia se face pe şiruri de date ce permite
redarea chiar inainte ca file-ul să se încarce complet.
Exp:<A href= “I_Have_A_Dream.mid”>Ascultă ABBA</A>
Un sunet de fond poate fi integrat. Putem folosi “bgsound“=url (doar IE)
Atribute “bgsound“ :
-src
-loop
-volume
Secvenţe video
-MPEG- forma oficială de compresie video
-WOW- similar cu AVI
Obs: Similar cu “bgsound” se poate folosi în cadrul “img” atributul djnsrc=url
9
Elementul “Object”
Înglobează orice element multimedia fiind folosit în asociere cu elementul
“param”(parametru).
Exp: <object data=”8 miles.avi” type=”video/msvideo” height=”150”
wight=”150”>
<param value=”autostart”>
</object>
“Applet”- aplicaţii de mici dimensiuni scrise în java.
Atribute:
codebase
code= sir de caractere
Name=”nume”
Tabele
Obs: Deşi actualmente rar folosită, datorită succesului css, formatarea paginilor
cu ajutorul tabelelor oferă un control strict al aspectului. Tabelele trebuie sa fie
capabile să-şi modifice dinamic dimensiunile pentru a se adapta la dimensiunea
curentă a ferestrei şi la mărimea fonturilor.
Atribute
-summary= sir de caractere – nivelul şi structura tabelelor
-align=left/ center/ right – specifica alinierea tabelului în document.
-width
-height
-border
-cols=număr coloane
-cell spacing=specifică spaţiul dintre celule cat şi dintre celule şi margine
tabel;
-cell padding=specifică spaţiul dintre chenarul celulei şi conţinutul ei;
O linie orizontală de tabel se introduce prin <tr>conţinut linie </tr>
Dacă linia descrie antetul tabelului atunci <tr>...</tr> se înlocuieşte cu
<th>.....</th>.
Datele din interiorul celulelor se introduc folosind <td>...</td>.
Nr.crt Nume şi prenume Varsta
1 ...... 28
2 ....... 34
3 ......... 43
10
A nu se confunda cu antetul. Se specifică prin <caption> principalul atribut fiind
align=bottom/ top/ left/ right.
<table>
<caption align=”bottom”>
<p>titlu tabel plasat jos</p>
</caption>...
....</table>
<tr>
<td Prima coloana text aliniat la stanga>
<valign=”middle”>
<td coloana a doua text centrat>
<valign=”bottom”>coloana a treia text aliniat dreapta jos
</table>
Celula 11 Celula 12
Celula 21 Celula 22
11
<tr>
<td>celula11</td>
<td>celula12</td>
</tr>
<tr>
<td>celula21</td>
<td newrop>.........>td>
<td>celula22</td.
</tr>
Culoarea de fundal se stabileste prin “bgcolor“ asociat lui <table> sau <tr>
sau <th> sau <td>.
Gruparea celulei
Pentru extinderea unei celule asupra celor situate la dreapta ei(pe linii) sau
extinderea catre dedesupt (pe coloane).
Celulele vide se obţin prin <td>...</td>, iar afisarea unui chenar pentru
celulele vide se introduce “ “ sau <br>.
Valoare explicaţie
void fărăchenar
lhs stanga
12
rhs dreapta
Valoare Explicaţie
name font chenar
Imagini hărţi
A. Mapare imagine
Imaginea este împărţită într-o sumă de zone active = link-uri către resurse
web/ locale.
Imaginea hartă se creează direct pe calculatorul client (acesta determină
coordonatele zonelor şi url-urile asociate), sau pe server.
Imaginea ce va fi mapată trebuie să existe.
Aceasta e divizată în zone active după care se creează elementul ce va
conţine harta, inclusiv atributele acestuia.
Imagine hartă client site:
13
1. Alegere imagine
2. construcţie hartă în interiorul unui bloc definit de <map>...</map> un atribut
obligatoriu pentru map este name cu valoare=nume hartă sau id
3. divizarea harţii se realizeze cu elementul elia
4. includerea imaginii în codul html:imaginea căruia i se precizează src(url
imag.harta), map=”#nume harta”
Obs: dacă harta se află într-o altă pagină web, usemap va primi= pag cu
harta.html#nume harta pag cu html/#nume harta
14
Machetarea paginii prin ferestre
Machetarea presupune împărţirea paginii în zone cu o anumită individualitate gen
zone de navigare, zone de afişare conţinut etc. Folosind ferestre (frame-uri) şi
cadre, un ecran poate fi divizat în mai multe zone (subferestre) în care se pot
încărca html-uri diferite. Metoda uzuală presupune machetarea prin intermediul
CSS. Pentru pagini mici însă sau “fără pretenţii” nu e necesar iar machetarea
paginii se poate face folosind chiar tabele.
Elemente:
- frameset, frame, iframe, noframe
Obs 1: există două categorii de ferestre:
- inline frame (iframe): se comportă ca un bloc de elemente într-o pagină.
- frame: care se comportă după propriile reguli de aşezare ocupând întreaga
suprafaţă a paginii.
Obs 2: structura unui document în ferestre e diferită de cea a unui document
“normal” prin faptul că <body> se înlocuieşte cu <frameset>
<head>......</head>
<frameset>
<frame>definire frame1</frame>
.
.
<frame>definire frame n</frame>
</frameset>
Obs 3: dacă browser-ul nu afiseaza frame-uri se poate pune un text alternativ
deviind în interiorul <noframe> text alternativ</noframe>
Obs 4: definirea ferstrelor se face din aproape în aproape prin împărţirea ferestrei
iniţiale în linii şi coloane folosind atributele cols şi rows ale lui “frameset“.
Aceste atribute au o listă de valori (pentru fiecare fereastra o valoare)
separate prin virgulă. Valorile pot fi exprimate în pixeli sau în procente din
dimensiunea ferestrei de afisare.
Caracterul steluţă „*” indică spaţiul rămas disponibil.
Obs 5: „n*” înseamnă spaţiul disponibil împărţit în n părţi.
Exp:
<frameset cols=”100,10%,*”>
</frameset>
<frameset rows=”20%,3*,100”>
<frameset cols=”30%,*”>
<frameset rows=”150,*”></frameset>
15
</frameset>
Frame:
Atribute:
-name=şir de caractere
-src=url
-noresize=cadrul nu poate fi modificat prin drag and drop.
-scrolling=auto/yes/no=specifica modul de defilare a informaţiilor din
cadru.
-bordercolor=culoare chenar(inclusiv pentru frameset)
-border=dimensiune chenar(doar pentru frameset)
Obs 6: pentru chenar invizibil se setează frameborder=no
-marginheight şi marginwidht=setează distanţele de la marginile unei
ferestre la conţinutul acesteia.
“Iframe“
-pentru inserarea de ferestre „inline”
-pot fi manipulate independent în interiorul unei pagini
-are aceleasi atribute ca şi frame plus: weight, height, align, hspace
Formulare
-folosite pentru a crea pagini web interactive
-un formular conţine o suma de controale (butoane, câmpuri, etc) plasate
între <form> şi </form>
-procesarea informaţiei transmise prîntr-un formular e determinată de catre
atributul action cu valoarea:
a) url-ul unui script aflat pe un server web ce prelucreaza datele unui
formular şi intoarce un raspuns.
b) o adresă de mail-metoda folosită pentru expediere. Metoda poate avea
valorile:
-get: caz în care datele din formular sunt adăugate la url-ul indicat de
action.
-post: datele sunt expediate separat fiind permise cantităţi mai mari.
Construcţia formularelor
Obs: Tipul câmpului este precizat prin type. La expediere se transmit către
servere perechi de forma <nume element din form>=<valoare>, date definite prin
atributele “name”, şi “value” ale lui input.
16
- checkbox- casetă de validare
- radio- buton radio
- file- fişier
- hidden- câmp ascuns
- image- imagine care înlocuieşte un buton
- password- parolă
- text- casetă text
Obs: câmpul de tip text poate avea setat atributul “read only”. Atributele size şi
maxlength indică lăţimea câmpului, respectiv numărul maxim de caractere
admise.
Câmpurile text se numesc “textarea“.
Elementul textarea are atributele:
- name/ id
- rows - specifică numărul de linii
- cols- specifică numărul de caractere ce vor fi afişate într-o linie
- wrap – off - determină întreruperea cuvântului în marginea dreaptă
a câmpului dacă se apasă enter.
– hard - cuvintele sunt întrerupte automat la dreapta câmpului;
caracterele de sfârşit de linie sunt incluse în textul transmis;
– soft - caracterele nu sunt incluse la expediţie.
Exp :
Login :
Nume :
Prenume :
Parola :
Submit Reset
17
<input type=”reset” value=”reset1”/>
</font>
Obs: value pentru checkbox reprezintă eticheta ce urmează butonului.
Obs: dacă vrem ca butonul de validare să fie iniţiat (selectat) se inserează
atributul checked.
Alte atribute: align- stabileşte alinierea în cadrul câmpului, tabindex- stabileşte
ordinea după care butonul ajunge să fie selectat (primeşte focusul) la apăsarea
tastei tab.
Liste de derulare (liste de selecţie)
SELECT cu atributele:
- name
- size: număr de opţiuni vizibile în fereastra de derulare
- multiple: dacă e specificat, lista permite selecţia multipla a unor opţiuni
Opţiunile din care e constituit meniul se introduc folosind elementul option cu
atributele:
-selected (iniţial se declară)
-value= sir de caractere
-label= denumire mai scurtă pentru conţinut
Obs 1: dacă size nu e specificat implicit e 1.
Exp :
<select size=3 name=”imprimante”>
<option value=”canon”>Canon BJC2000</option>
<option value=”hp” selected>hp LawSet1000</option>
<option>hp Inkjet</option>
<option>Xerox</option>
<option>…..</option>
</selected>
Obs 2: pentru a crea subliste de meniuri se foloseste optionlist.
18
CSS
Cascading Style Sheets- stiluri de formatare în cascadă
Obs: Pentru a crea pagini cu un design evoluat, html ofera puţine elemente de
formatare.
CSS ca şi cadru de lucru s-a folosit din ’94, în ’96 devenind recomandare
w3c(wwwc).
Avantajele folosirii css:
1. Dă posibilitatea definirii de la început a tuturor formatărilor necesare (cum ar
fi: fonturi, culori, aliniere, spaţiere etc.)
2. Economie de timp : dacă dorim ca heading (H1) să fie rosu definim un stil
pentru acesta pe care îl declarăm o singură dată nemaifiind astfel nevoie de a
rescrie codul html.
3. Sunt uşor de modificat. De exemplu, pentru a schimba culoarea paragrafelor
H1 din roşu în verde, nu vom parcurge tot documentul, înlocuind culoarea, ci
vom modifica doar stilul.
4. Stilurile sunt aplicate de browser în mod unitar (cum documentele html sunt
foarte stufoase se poate greşi uşor).
5. Stilurile pot fi aplicate mai multe pagini web, iar modificarea stilurilor va fi
automat reflectată în toate paginile care le utilizează.
HTML nu impune un anumit limbaj de definire a stilurilor. Dacă se foloseşte
CSS se va introduce în antet o declaraţie gen: <meta http-equiv=”content-type-
style” content=”text/css”>
Specificarea stilurilor
a) Stiluri inline-folosite prin intermediul atributului style=”sir de caractere”
aplicat elementelor html ce se “stilează“.
Exp : <p style=”text-align:center; color:green”>Am aplicat un stil cu verde
pentru p, centrat. Lista atributelor ce se stilează este separată prin punct şi
virgulă, iar separarea atribut- valoare se face prin intermediul “:”.
Specificarea unui stil inline e utilă când dorim formatarea individuală a unui
element.
b) Stiluri dedicate = specificarea stilurilor în antet.
În antet pot să apară oricât de multe elemente style folosite pentru a
specifica stiluri pentru:
19
-toate apariţiile unui anumit element html în documentul respectiv;
-toate apariţiile unui element dintr-o clasă. Clasa corespunzătoare unui
element html se specifică prin atributul “class”.
-apariţiile individuale ale unui anumit element. Identificarea apariţiilor
unui element cărora li se aplică stilul se realizează prin intermediul atributului
“id”.
20
Exp:
<link type=”text/CSS” rel=”stylesheet” href=”UnStilCSS.css” title=”de
preferat”>
Clase de stiluri
O clasă de stiluri permite definirea unui stil general aplicabil unui element
sau unui grup de elemente.
Referirea unei clase se poate face în mai multe locuri în cadrul aceleiaşi
pagini sau în pagini diferite.
Definim clasa: t_alb_gri
<style>
.t_alb_gri
{text-align:center;color:white;background:gray;width:300px;
}
</style>
Apelul:
<body>
<p class=”t_alb_gri”>Paragraf cu stilul “t_alb_gri”</p>
<H2 class=”t_alb_gri”>Heading 2 tip t_alb_gri”</H2>
P class=”t_alb_gri”>Revin la formatarea t_alb_gri</p>
Obs: Head-erele au un format propriu relative la mărimea fondului, astfel
mărimea textului afişat cu H2 rămâne cea specifică acestuia.
Obs: Dacă dorim ca o clasă să fie aplicabilă numai pentru anumite elemente, în
construcţia numelui clasei va apărea numele elementului în faţă:
<style>
p.t_alb_gri {...}
</style>
Dacă setăm
<p class=”t_alb_gri”>Paragraf cu stilul t_alb_gri</p>
<H2 class=”t_alb_gri”>...
21
<p class=”t_alb_gri”>…
Observăm că stilul nu se aplică lui H2.
Obs: Dacă dorim să aplicăm o clasă de stil mai multor elemente vom trece
numele acestor elemente după numele clasei separate prin virgulă cât şi faţă de
aceasta.
În acest caz nu mai e necesară aplicarea stilului prin “class”.
Exp:
.t_alb_gri;
p, h2
{text-align:center; color:white; background:gray;….}
sau
<style>
p.t_alb_gri, h2 {…………}
</style>
<body>
<p>Paragraf cu stilul t_alb_gri</p>
<h2>Heading2 cu stilul t_alb_gri</h2>
</body>
Obs: Pentru declararea p.t_alb_gri, h2, pentru p. trebuie în continuare să se
apeleze stilul prin class, în caz contrar va apare fără stil.
Obs: Dacă dorim ca mai multe clase să descrie acelasi stil (mai rar folosit, se pot
însă crea stiluri în baza acestora), se separă numele claselor prin virgulă:
<style>
.t_alb_gri,.cls2,.cls3, p
{…………
}
</style>
22
a : hover
{text-decoration:none; text-style:Italic;}
a : focus
{color:#33333}
a : click
{color:white; background:black;}
Pentru ca legăturile să utilizeze un anumit stil se pot folosi:
1.a : link.clasa{......}
(sau a : hover etc.) cu
<a class=”clasa” href=” “>......</a>
2.a : link#nume_id{…} cu
<a id=”numeid” href=” “ >….</a>
3.a.clasa1: link {……}
<a class=”clasa1” href=” “>….</a>
Exp:
1. p : first-letter
{font-size:3 em;
}
2. p : first-line
{font-style:Arial;
Text-transform:uppercase
}
Stiluri dedicate
Pentru a crea un stil dedicate folosim o sintaxa gen:
<style>
Inclinat{text-style:Italic}
</style>
Elementul în care dorim utilizarea locală a acestui stil va primi atributul id
cu valoarea egală cu numele stilului.
Exp:
<p id=”italic”>Linie cu text inclinat</p>
Dacă dorim să aplicam stilul dedicat doar pentru anumite elemente atunci
vom trece numele elementului în faţa numelui stilului:
23
Exp:
1. <style>h4#inclinat {font-style :Italic}
</style>
2. <style>
<h4 id= ”italic”>Text cu h4
Class sau id
Id-urile se folosesc o singura dată într-un html(o convenţie de fapt) în timp
ce class se poate folosi de mai multe ori.
În general id-urile se folosesc pentru structurile principale ale paginii
(header, footer, conţinutul principal).
Selectorii de tip class se folosesc pentru elementele ce apar de mai multe
ori în cadrul paginii.
Obs: Id-urile(clase declarate cu #) vor fi intotdeauna prioritare faţă de selectorii
de tip class.(.)
Exp:
<style>
#aldin
{text-transform:uppercase}
.mic
{text-transform:
</style>
.
.
<p id=”aldin”>Text cu litere mari</p>
<p class=”mic”>Text cu litere mici</p>
<p id=”aldin” class=”mic”>Text cu litere mici şi mari combinate</p>
24
Atribute pentru stiluri
Margin-left Auto|număr|procent
-right
-top
-bottom
Padding-left auto|număr|procent
-right
-top Padding-se referă la distanţa dintre
-bottom bloc şi bordura sa, iar distanţa dintre
padding Thin | mediu | thick bordura şi celălalt element este
| margi-
Număr | ne.
Unitate de măsură|
Border left | width
right | width
top | width
bottom | width
border | width
25
Border top + width, Right | bottom | left Chenarul superior
Style, color |
Border |
Layer
26
background- -url
image
clip -rect (top, right, bottom, Determină decuparea dintr-un layer
left) a unei suprafeţe vizibile
27
-fiecare element web suportă un oniect stil (stilare) folosit în manipularea
aspectului şi a acţiunii sale
-acest obiect caruia i se atribuie un id pentru a fi accesat e poziţionat între
<div>.....
</div>(bloc) şi <span>...</span>(inline).
Obs: obiectele stil pot fi accesate prin scripturi gen:
<span id=”text”
onMouseover=”text.style.color=’red’”
onMouseover=”text.style.color=’green’”>Mută cursorul aici
</span>
Permit adaugarea unor texte speciale, textelor sau imaginilor
Apelarea unui filtru ca element de stil se face conform sintaxei
<nume_element.style=”filter”:<nume_filtru>
glove -color
-strength
gray Imagine în tonuri de gri
invert negative
28
shadow -color umbra
-direction
drop- -color Dropshadow(color=red,
shadow -offx offx=5, offy=5, positive=
-offy true)
-positive
xray Imagine alb-negru
29
-absolute – scoate un element din flow-ul paginii şi il plaseaza
intr-o “lume proprie”. Oriunde în pagina sau în bloc folosin aceleasi valori(top,
bottom, left)
-fixed – similar cu absolute va poziţiona elementul în raport
cu fereastra browser-ului prin opoziţie cu afisarea în cadrul paginii
Astfel elementele fixe vor “sta” pe ecran chair dacă pagina este
scrollată.
Exp:
Layout folosind poziţia absolută
#navigare
<style>
{position:absolue; top:0; left:0; width:10 em;
}
</style>
#conţinut
{margin-left:10 em;}
JAVA SCRIPT
30
JAVA JAVA SCRIPT
-codul este inclus într-un document -codul este compilat şi stocat într-un fişier
html distinct
-un script e interpretat de browser pe -un applet e compilat, încărcat şi executat
Calculatorul client Pe calculatorul user-ului
-putem crea un script cu un editor -un applet se creează folosind un mediu de
-variabilele nu trebuiesc declarate dezvoltare JAVA
-utilizatorii îşi pot crea funcţii proprii -variabilele trebuiesc declarate şi trebuie să
-scripturile sunt predominant orientate aparţină (să fie de tipul) unei clase JAVA
Spre eveniment -funcţiile sunt metode ale obiectelor
-controlul erorilor este sumar -applet-urile pot rula independent de
-majoritatea browser-elor accepta JS eveniment
-control strict
Variante JS:
1.JS de baza – conţine elemente generale de descriere a script-urilor
2.Client side JS – o extensie a nucleului JS=cea mai utilizată
3.Server side – permite descrierea de script-uri ce se execută pe server
Obs: Deşi nu este obligatoriu există practica plasării script-urilor între <!-- şi//-->
Pentru browser-ele care nu suportă scripting.
Exp:
<script type=”text/javascript”>
<!—document.write(“Salut”)
//- - >
</script>
Obs: Atributul Language e opţional, dar recomandat.
Exp:
(JS extern)
<script language =”JavaScript” src=”JS_extern.js>
</script>
Notă :Cele mai utilizate unelte pentru crearea JS :
-JQuerry
-MooTools
Obs: JS=case sensitive
Între obiecte (JS ca limbaj conţine un set de instrumente care prin
combinaţie cu obiecte şi proprietăţi formeaza un script. Există o anumită ierarhie
31
ce reflectă structura unui document html denumită modelul obiect- document
(document object model).
Modelul obiect-document (dom! nu este unic) descrie structura unui
documentului reprezentat prin obiecte şi proprietăţi.
JS conţine un set de obiecte predefinite ce pot interacţiona cu diverse
componente html.
DOM
WINDOW LAYER
LINK
FRAME IMAGE
DOCUMENT ANCHORE
LOCATION APPLET
PLUGIN
MIME TYPE
32
Obs: Un tip special de obiect este cookie. Conţine informaţii despre client ce pot
fi accesate de către server.
Proprietăţile JS sunt folosite pentru a seta sau a regăsi valoarea obiectelor.
Modul de acţiune al unui obiect e dictat de asocierea unei valori anumitor
proprietăţi.
Exp:
Document.LinkColor=”#FF0000”
Metodele unui obiect sunt funcţiile asociate obiectelor conform sintaxei:
identificator_obiect. identificator_metoda()
Exp:
string.touppercase( )
Funcţii JAVASCRIPT
Exp1:
function putere(x, y)
{total=1ş
for(j=0; j<y; j++)
total *=x (total=total*x)
return total
}
Obs: În 95% din cazuri sintaxa C, C++ rămâne valabilă pentru JS.
Exp2:
Legătura JS- html
<html>
<head>
<script language=”JavaScript”>
Function apasa( )
{alert (“Mesaj eroare”);
}
</script>
33
<body>
.
.
<form>
<input type=”Buton” name=”Buton1” value=”Apasa aici”
onclick=”Apasa”()>
</form>
<html>
<head>
<meta http-equiv=”content-script-type” content=”text/javascript”/>
<script>
< !- -
function calcul(f)
{if confirm(”Esti sigur ? ”)
rezultat.value=eval(f.exp.value)
Else
Alert (“Lasam pe altă dată! “)
}
#inchid comentariul- - >
</script>
</head>
<body>
<form>
Introduceti o expresie :  
<input type=”Text” name=”exp”>
</input>
<input type=”button” value=”calc”>onclick=”Calcul (this.form)”>
</input>
</br>
Valoarea expresiei este:
<input type=”Text” name=”rezultat” size=15>
</input>
</form>
</body>
</html>
Exp3:
<script type=”text/javascript”>
34
<!- -
Var name;
Function intreaba( )
{nume=prompt(“Cum te numesti?”)
Salut=alert(“Bine ati venit;”+nume+ ” ! ”)
}
Function pa( )
{alert (”La revedere, ”+nume+” ! ”)
}
//- - >
</script>
<body onload= ”intreaba ( ) ” onunload=”pa( )”>
<script type=…….>
<!- -
Lg=20;
Viteza=2;
Poz=lg;
Mesaj=”Balans”;
Dir=2;
Lg=Mesaj.length-1;
Function Balans( )
{dir= = 2? Poz- = viteza:poz+=viteza;}
35
var y=eval(prompt(“Dati y=”));
var ma=(x+y)/2;
document.write(“Media aritmetica a lui x şi y, ma=”,ma)
</script>
Exp: Se citeşte un număr natural pozitiv. Să se afişeze câte cifre conţine numărul.
X=123
<script...>
document.writeline(“Dati un numar”);
var s=0;
var n=eval(prompt(“n=0”);
var x=n;
if(n>=0)
{do
{n=Math.floor(n/10);
S++;
}
While(n!=)
document.write(“Numarul”, x, “are”, s, “cifre”);
}
Else
document.write(“Numarul”, x, “nu este pozitiv”);
</script>
Funcţii şi apelare
Vom folosi funcţia “culori” pe care o vom apela de mai multe ori cu valori
diferite, dand click pe butoane: rosu, galben, albastru, se va schimba culoarea de
fundal a paginii.
<head>
<script...>
function culori(x)
{document.writeline(“<body bgcolor=”+x+”>”);
document.writeline(“Pagina cu fundal de culori diferite”);
}
</script>
</head>
<body>
<form>
36
Daţi click pe un buton pentru a schimba culoarea de fundal
<input type=”button” onclick=”Culori(‘red’)” value=”Rosu”>
<input type="button" onclick="culori('yellow')" value="galben">
<input type="button" onclick="culori('blue')" value="albastru">
</form>
</body>
</html>
Parametrii funcţiilor
Reamintim ca parametrii aflaţi în partea de declarare a funcţiilor se numesc
formali. Acesţia cat şi parametrii efectivi pot lipsi la apelul funcţiei. Numarul
parametrilor formali trebuie să fie egali ci cei efectivi.
Obs: Excepţia de la această regula face proprietatea “arguments” ce poate fi
utilizată ca un numar diferit de parametrii la apelul funcţiei.
Pentru a determina numarul de parametri din apel utilizăm în cadrul
funcţiei următoarea proprietate “arguments.length”.
Arguments este un masiv(unidimensional) ce are ca primă valoare
arguments[0].
Expresie: vom apela o funcţie numită lista din interiorul unei instrucţiuni
de afisare prin urmatorul apel:
lista(“u”, “Primavara”, “Vara”, “Toamna”, “Iarna”)
La execuţia funcţiei se parcurg parametrii cu arguments.length. Parametrul
“u” de la apel se introduce în funcţie pentru a afisa o listă neordonată.
<head>
<script>
function lista (x)
{document.write
(“<”+x+ “l” type=circle>”)
for(var i=1; i<lista.arguments.length; i++)
document.write(“<li>” +lista.arguments[i]+”</li>”);
document.write(“</”+x+”l>”);
}
</script>
</head>
<body>
<script type=”...”>
Write(lista(“u”, “Primavara”, “Vara”, ”Toamna”, “Iarna”));
</script>
</body>
37
Funcţii şi stiluri
<html>
<head>
<title>Funcţii şi stiluri</title>
<style>
.s1{font-family:Arial, Helvetica, sans-serif;
font-size:18px;
color:#006633;
background-color:#91FFC8;
}
.s2{font-family:Georgia,Times New Roman,serif;
font-size:16px;
color:#3333FF;
background-color:#CC0000;
}
.s3{font-family:Arial,Helvetica, sans-serif;
font-size:18px;
color:#3333FF;
background color:#9B9CF0;
}
</style>
<script>
function f1()
{var reg=/ \n /g;
var getElementById=document.formular.ta.value;
var y=getElementById.replace(reg."</br>");
document.getElementById("target")innerHTML=y;
}
var t=0;
var a=New Array("s1","s2","s3");
38
function f2()
{t=0;
document.getElementById("abc")className=a[t];
}
function f3()
{t=1;
document.getElementById("abc")className=a[t];
}
function f4()
{t=2;
document.getElementById("abc")className=a[t];
}
function f()
{document.getElementById("Target")className=document.getElementById("ab
c")className;
}
</script>
</head>
<body>
<table>
<tr>
<td>
<div id=target class=s2>Scrieti un text şi dati click</div>
</td>
</tr>
</table>
<form name=formular>
<text area name=ta class=s1 id=abc>
Spune,inimioara,spune
Ce durere te rapune?
E.Vacarescu
</text area>
</br>
39
Scrieti un text şi dati click
<input type="button" value="Apasati" onclick="f1()">
</br>
Alegeti un stil şi daţi click<input type="button" value="stil1"
onclick="f2()"></br>
Alegeti alt stil şi daţi click<input type="button" value="stil2"
onclick="f3()"></br>
Alegeţi alt stil şi daţi click<input type="button" value="stil3"
onclick="f4()"></br>
Daţi click pentru a aplica stilul<input type="button" value="click"
onclick="f()"></br>
</form>
</body>
</html>
40
-onClick
-onDblClick
-onMouseDown
-onMouseMoove
-onMouseUp
-onMouseOver
-onMouseOut
a) Tratarea evenimentelor de catre sistem
Reamintim ca onError este event.handler pentru obiecte image şi window.
Exp1: formular cu un singur buton care il aplic, apeleaza o funcţie ce conţine o
eroare.
<head>
<script type=”JavaScript”>
onError=MesajEroare;
var x=” “;
function MesajEroare(mesaj, url, linie)
{x=”Este o eroare în pagina vizitată! \n Eroare:”+mesaj+ “\n”;
x+=url:+url+”\n”;
x+=”linia:” +linie+ “\n”;
x+= “Dati click pentru a continua!”;
Alert (x);
return true;
}
function f( )
{document.writeln(“Nu sunt vizibila!”);
}
</script>
</head>
<body>
<form>
<input type=”button” value=”Apasati!” onClick=”f( )”;
</form>
</body>
41
}
42
<form name=”formular”>
Coordonatele cursorului </br>
x:<input type=”text” name=”x” value=” “></br>
y:<input type=”text” name=”y” value=” “></br>
</form>
<script type=”.......’>
var InternetExplorer = document.all?true:false
if(!InternetExplorer)
document.captureEvents(Event.MouseMoove);
document.onMouseMove=poziţie;
function pozitie(poz)
{*var x;
var y;
if(!InternetExplorer)
{x=poz.Pagex;
y=poz.Pagey;
}
document.formular.x.value=x;
document.formular.y.value=y;
}
</script>
</body>
43