Documente Academic
Documente Profesional
Documente Cultură
Partea a II-a
Victor BUCATĂ
1 Introducere
2 Limbajul CSS
Tipuri de utilizare CSS
Sintaxa CSS
Selectarea elementelor
Unităt,i de măsură
Fundaluri
Formatarea textului
Modelul dreptunghiular/Pozit,ionare
3 Limbajul JavaScript
Motivat,ie
Elementele limbajului
Ce sunt CSS s, i JavaScript?
Ce este CSS?
I CSS este acronimul de la Cascading Style Sheets (Foi de Stil ı̂n
Cascadă).
I CSS descrie modul ı̂n care sunt afis, ate elementele HTML pe
ecran, hârtie sau alte suporturi.
I CSS cres, te eficient, a. Poate controla aspectul mai multor pagini
Web foarte us, or.
I Foile de stil externe sunt stocate ı̂n fis, iere CSS.
Ce este JavaScript?
I JavaScript este un limbaj de programare de script (codul este
vizibil utilizatorului), interpretat ı̂n browser, dezvoltat de Netscape s, i
Sun s, i cu care pot fi create pagini web interactive.
I HTML 5 cont, ine s, i descrierea unor funct, ii API (Application
Programming Interface) JavaScript care interact, ionează cu
documentul HTML prin intermediul arborelui DOM (Document
Object Model).
I Limbajul JavaScript nu are nicio legătură cu limbajul Java, este doar
o coincident, ă de nume
Limbajul CSS
Tipuri de utilizare CSS
Există mai multe tipuri de utilizare CSS:
1 intern
2 extern
3 ı̂n linie
CSS intern
Codul CSS se plasează ı̂n cadrul elementului head ı̂ntre tagurile
<style> s, i </style>, ca mai jos:
1 <head>
2 <title></title>
3 <style type="text/css">
4 Continutul CSS se plaseaza aici
5 </style>
6 </head>
7 <body>
8 ...
9 </body>
CSS intern
I Folosind această metodă, fiecare fis, ier HTML cont, ine codul CSS
necesar pentru pagina respectivă.
I Dacă se face o modificare, ea trebuie repetată ı̂n toate fis, ierele
HTML.
I Această metodă este potrivită ı̂n cazul unei singure pagini web sau
dacă fiecare pagină are un stil separat.
CSS extern
I Un fis, ier CSS extern este un fis, ier text simplu.
I Fis, ierul nu cont, ine decât cod CSS. Se salvează cu extensia .css iar
legătura din fis, ierul HTML se plasează ı̂n elementul head ca mai jos:
1 <head>
2 <title></title>
3 <link rel="stylesheet" type="text/css" href="Cale catre
4 foaiadestil.css" />
5 </head>
I CSS extern poate necesita put, in mai mult timp pentru afis, are.
I Browserele nu afis, ează ı̂ntotdeauna ı̂n acelas, i fel stilurile.
I Pentru anumite clase de utilizatori, eliminarea stilurilor de pe
pagină este preferată.
Sintaxa CSS
Exemplu de fişier CSS
1 /* Acesta este un comentariu */
2 h1,h2,h3 {font-family: Arial, sans-serif;} /* utilizeaza primul
font disponibil */
3 p, table, li, address { /* se aplica asupra tuturor tag-urilor*/
4 font-family: "Courier New"; /* se cuprind intre " " valorile cu
spatii */
5 margin-left: 15pt; /* specifica indentarea */
6 }
7 p, li, th, td {font-size: 80\%;} /* dimensiunea fontului este de
80% */
8 th {background-color:#FAEBD7;} /* culorile se pot specifica in
hexa */
9 body { background-color: #ffffff;}
10 h1,h2,h3,hr {color:red;} /* se pot specifica culori si prin nume*/
11 a:link {color:darkred;} /* un link nevizitat */
12 a:visited {color:darkred;} /* un link vizitat*/
13 a:active {color:red;} /* un link activ */
14 a:hover {color:red;} /* cand mouse-ul este peste el */
Sintaxa CSS
Sintaxa CSS constă numai din 3 părt, i: selector, proprietate s, i valoare.
1 selector {proprietate: valoare}
I Acum tot textul din fis, ierul HTML va avea fontul Verdana (dacă nu
există Verdana, se va alege alt font serif). Dacă se dores, te un alt
font pentru titlurile h1 sau pentru paragrafe - exemplu:
1 h1 {font-family: Georgia, sans-serif;}
2 p {font-family: Tahoma, serif;}
Obs: Serifele sunt liniut, ele, mai mult sau mai put, in subt, iri/fine, cu care se
termină unele din trăsăturile principale ale unor caractere de literă.
Clasele CSS
I Selectorul de clasă permite asocierea stilurilor diferit pentru diverse
elemente.
I Se comportă asemănător cu CSS inline.
I Un selector de clasă se poate folosi de oricâte ori dorim.
I Un selector de clasă ı̂ncepe cu caracterul punct (.)
I Este bine să se folosească nume de clase descriptive s, i nu
denumiri legate de aspect, de exemplu: buton, textimportant etc.
Clasele CSS
I Exemplu de selector de tip:
1 p {
2 font-size: small;
3 color: #333333
4 }
sau
1 a[target="_blank"] {
2 background-color: yellow;
3 }
Selectorul de atribut (continuare)
I valoarea atributului este ”val” sau ı̂ncepe cu ”val” urmat imediat
de ”-”
*[lang|="val"]
I un atribut cu valoarea ı̂ncepând cu prefixul ”val”
Element[atributˆ="val"]
I un atribut cu valoarea terminată cu sufixul ”val”
Element[atribut$="val"]
I un atribut ce cont, ine cel put, in o instant, ă a substringului ”val”
Element[atribut*="val"]
Unităt, i de măsură CSS
Unităt, i de măsură absolute
I cm - centimetri
I in - inci
I mm - milimetri
I pc - pica (1pc = 12 puncte)
I pt - punct (1pt = 1/72 inci)
Unităt, i de măsură relative
I % - procent
I ch - lăt, imea caracterului 0” pentru fontul utilizat
”
I em - (1em = mărimea fontului pentru elementul curent)
I ex - dimensiunea x a fontului elementului
I gd - dimensiunea celulei definite prin grila layout-grid”
”
I px - dimensiunea pixelului pentru dispozitivul curent
I rem - mărimea fontului elementului rădăcină
I vh - ı̂nălt, imea ecranului dispozitivului curent
I vw - lăt, imea ecranului dispozitivului curent
I vm - minimul dintre vh s, i vw
Unităt, i de măsură pentru unghiuri
I deg - grade
I grad - 100grad = 90deg
I rad - radiani
I turn - rotiri (1turn = 360deg)
Unităt, i de măsură pentru timp s, i frecvent, ă
Timp:
I ms - milisecunde
I s - secunde
Frecvent, ă:
I Hz
I kHz
Unităt, i de măsură - culori
I numele culorii - red, blue, green, dark green
I rgb(x,y,z) - red = rgb(255,0,0)
I rgb(x%,y%,z%) - red = rgb(100%,0,0)
I rgba(x,y,z,alpha) - red = rgba(255,0,0,1)
I #rrggbb - ı̂n hexazecimal - red = #ff0000 (sau prescurtat #f00)
I hsl(hue, saturation, lightness) - red = hsl(0,100%,50%)
I hsla(hue, saturation, lightness, alpha) - red = hsl(0,100%,50%,1)
I flavor - o culoare de accentuare (de obicei aleasă de utilizator).
I currentColor - valoarea calculată a proprietăt, ii color.
Fundaluri CSS
Fundaluri CSS
I Nu se mos, tenesc.
I Exemplu:
1 background: #ffffff url(path_to_image) top left no-repeat
fixed;
I Subproprietăt, i:
I attachment
I color
I image
I position
I repeat
I size
Fundaluri CSS - Attachment
Exemplu:
1 background-attachment: valoare;
Valori posibile:
I url
I none
Fundaluri CSS - Position
1 background-position: valoare;
Valori posibile:
I repeat
I repeat-x
I repeat-y
Fundaluri CSS - Size
Exemplu:
1 background-size: auto|length|cover|contain|initial|inherit;
I xx-large
I x-large
I larger
I large
I medium
I small
I smaller
I x-small
I xx-small
I mărime
I % (procent)
Proprietatea font-style
Exemplu:
1 font-style: valoare;
I Subproprietăt, i:
I type
I position
I image
Liste ordonate s, i neordonate - image
I Exemplu:
1 list-style-image: url(cale_catre_imagine.gif, jpg sau png);
I Este bine să fie declarată s, i list-style-type ı̂n cazul ı̂n care utilizatorul
nu afis, ează imaginile.
Liste ordonate s, i neordonate - position
I Exemplu:
1 list-style-position: valoare;
I Valori:
I inside
I outside
Liste ordonate s, i neordonate - type
I Exemplu:
1 list-style-type: valoare;
I Valori:
I disc
I circle
I square
I decimal
I lower-roman
I upper-roman
I lower-alpha
I upper-alpha
I none
Linkuri formatate CSS
I Culoarea linkului fără nicio act, iune produsă:
a:link {color: #009900;}
I Culoarea unui link deja vizitat:
a:visited {color: #999999;}
I Culoarea când pointerul este plasat pe link:
a:hover {color: #333333;}
I Asemănător cu hover dar atunci când linkul a fost accesat prin
tastatură:
a:focus {color: #333333;}
I Culoarea când linkul este apăsat:
a:active {color: #009900;}
I Obs: a:link s, i a:visited trebuie declarate ı̂nainte de a:hover iar acesta
ı̂nainte de a:active.
Modelul dreptunghiular
Elementele HTML de bloc s, i de linie
Elementele bloc:
I Au valori definite pentru dimensiunile spat, iului ocupat.
I De obicei ı̂ncep pe o linie nouă cu except, ia cazului când sunt
flotante s, i sunt alăturate altor elemente bloc flotante.
I Pot cont, ine la rândul lor alte elemente bloc sau de linie.
I Sunt folosite de obicei pentru port, iuni mai mari de cont, inut (imagini,
paragrafe etc.).
I Se foloses, te proprietatea display:
1 display: block;
Elementele HTML de bloc s, i de linie
Elementele de linie:
I Nu au valori definite pentru dimensiunile spat, iului ocupat.
I Ocupă lăt, imea necesară afis, ării cont, inutului.
I Nu este obligatoriu să ı̂nceapă pe o linie nouă.
I Nu pot cont, ine elemente bloc.
I Pot cont, ine alte elemente de linie.
I Sunt folosite de obicei pentru port, iuni mai mici de cont, inut (câteva
cuvinte).
I Se foloses, te proprietatea display:
1 display: inline;
Elementele HTML linie-bloc (inline-block)
Elementele inline-block:
I Au valori definite pentru dimensiunile spat, iului ocupat.
I Nu este obligatoriu să ı̂nceapă pe o linie nouă.
I Pot cont, ine alte elemente bloc.
I Pot cont, ine alte elemente de linie.
I Exemplu proprietatea display:
1 display: inline-block;
Elementele Div
I Elementele Div sunt elemente bloc HTML. Un element Div poate
cont, ine orice element.
I Exemplu (cod HTML):
1 <div id="container">
2 Aici se afla continutul siteului
3 </div>
I Valori:
I auto
I lungime
I procentaj
I Similar pentru proprietatea lăt, ime (width)
Proprietăt, ile CSS Width s, i Height - ı̂nălt, imea rândurilor
I Exemplu pentru ı̂nălt, imea rândurilor:
1 line-height: valoare;
I Valori:
I normal
I număr
I mărime
I procentaj
Proprietăt, ile CSS Width s, i Height - ı̂nălt, imea maximă
I Exemplu pentru ı̂nălt, imea maximă:
1 max-height: valoare;
I Valori:
I none
I lungime
I procentaj
I Similar pentru proprietatea lăt, ime maximă (max-width)
Proprietăt, ile CSS Width s, i Height - ı̂nălt, imea minimă
I Exemplu pentru ı̂nălt, imea minimă:
1 min-height: valoare;
I Valori:
I lungime
I procentaj
I Similar pentru proprietatea lăt, ime minimă (min-width)
Proprietatea Margin
I Proprietatea margin nu se mos, tenes, te.
I Proprietatea margin declară spat, iul dintre un element HTML s, i
elementele din jurul său.
I Poate fi stabilită pentru toate cele patru părt, i:
1 margin-top: lungime, procentaj sau auto;
2 margin-left: lungime, procentaj sau auto;
3 margin-right: lungime, procentaj sau auto;
4 margin-bottom: lungime, procentaj sau auto;
I După cum vedet, i există trei tipuri de valori posibile: lungime (unităt, i
absolute), procentaj (unităt, i relative) sau auto.
Proprietatea Margin ı̂n varianta cu 4 sau mai put, ine valori
I Există posibilitatea de a declara proprietatea margin ı̂n varianta 4
valori (ı̂n ordinea sus, dreapta, jos, stânga):
1 margin: 10px 10px 10px 10px;
I Valori:
I culoare
I stil
I grosime
Chenare (border) CSS - culoare
Exemplu:
1 border-color: valoare;
I Valori:
I culoare
I stil
I grosime
I Alte exemple:
1 border-bottom-color: valoare;
2 border-bottom-style: valoare;
3 border-bottom-width: valoare;
Chenare CSS (border) - raza chenarului
I Exemplu:
1 border-top-right-radius: lungime;
2 border-bottom-right-radius: lungime;
3 border-bottom-left-radius: lungime;
4 border-top-left-radius: lungime;
I Alt exemplu:
1 border-radius: 2em 1em 4em / 0.5em 3em;
I Valori:
I block - elementul este de tip bloc
I inline - elementul este de tip linie
I inline-block - elementul este de tip linie-bloc
I list-item - elementul este afis, at ca un item de listă
I none - elementul nu este afis, at deloc.
Elemente flotante - proprietatea float
I Proprietatea float modifică modul ı̂n care este afis, at un element.
1 float: valoare;
I Valori:
I left - elementul este afis, at ı̂n partea stângă a elementului părinte
I right - elementul este afis, at ı̂n partea dreaptă a elementului părinte
I none - nu se face nicio modificare a afis, ării
Elemente flotante - proprietatea clear
I Proprietatea clear specifică dacă se permite pozit, ionarea altor
elemente flotante lateral.
1 clear: valoare;
I Valori:
I none - pot fi elemente flotante pe orice parte
I both - nu permite niciun element flotant
I left - nu pot fi elemente flotante ı̂n stânga
I right - nu pot fi elemente flotante ı̂n dreapta
Proprietatea clip
I Proprietatea clip specifică cât din element este vizibil.
1 clip: valoare;
I Valori:
I auto
I shape
I Exemplu:
1 clip: rect(10px, 10px, 10px, 10px);
Proprietatea overflow
I Proprietatea overflow controlează ceea ce se face atunci când
cont, inutul depăs, es, te cadrul.
1 overflow: valoare;
I Valori:
I auto
I hidden
I visible
I scroll
I Exemplu:
1 #overflow_box {width:200px; height:200px; border-top: 1px
solid
2 #eee; border-left: 1px solid #eee; border-bottom: 1px solid
3 #eee; padding: 10px; overflow: auto;}
Proprietatea visibility
I Proprietatea visibility permite ascunderea unui element. Spre
deosebire de display:none, visibility:hidden ocupă spat, iul
elementului pe pagină.
1 visibility: valoare;
I Valori:
I hidden
I visible
Proprietatea z-index
I Proprietatea z-index defines, te ordinea de suprapunere a
elementelor.
1 z-index: valoare;
I Valori:
I auto
I number
Proprietatea position
I Proprietatea position determină modul ı̂n care sunt pozit, ionate
elementele.
1 position: valoare;
I Valori:
I static - implicit
I relativ - ı̂l pozit, ionează relativ la pozit, ia normală
I absolute - la marginea din stânga sus a elementului părinte (a paginii)
I fixed -fixat la scroll
Proprietatea position
I Proprietatea position lucrează cu următoarele proprietăt, i:
I top
I left
I right
I bottom
I Exemplu:
1 position: absolute; top: 10px; right: 10px;
Proprietatea box-sizing
I Proprietatea box-sizing (CSS3) modifică modul de calcul al
dimensiunilor reale ale cadrului unui element.
I Exemplu:
1 box-sizing: border-box;
I content-box (implicită)
I padding-box
I border-box (cea mai utilă)
I inherit
I initial
Concluzie s, i resurse suplimentare
I Această sect, iune a avut drept scop numai prezentarea generală a
CSS.
I Multe lucruri nu le-am acoperit (pseudoelementele, transformările,
tranzit, iile, limbaje de preprocesare a CSS) dar sper ca v-am oferit o
privire de ansamblu.
I Este util s, i rezumatul pe care ı̂l putet, i găsi aici: http://coding.
smashingmagazine.com/wp-content/uploads/
images/css3-cheat-sheet/css3-cheat-sheet.pdf
I Sau putet, i căuta cu Google CSS cheatsheets”
”
I Un alt ghid util: http://www.cssbasics.com/full.pdf
Limbajul JavaScript
De ce să ı̂nvăt, JavaScript?
JavaScript este unul din cele 3 limbaje pe care trebuie să le cunoască
orice programator web:
I HTML pentru a defini cont, inutul paginilor web
I CSS pentru a specifica aspectul paginilor
I JavaScript pentru a programa comportarea paginilor
Observat, ii importante!
I JavaScript s, i Java sunt limbaje complet diferite atât din punct de
vedere conceptual cât s, i din cel al proiectării.
I JavaScript a fost inventat de Brendan Eich ı̂n 1995 s, i care a devenit
standard ECMA ı̂n 1997.
I ECMA-262 este numele oficial. ECMAScript 2016 (Iunie 2016) este
ultima versiune JavaScript.
Scripturi HTML - JavaScript
Folosind JavaScript, paginile web devin mai interactive.
Scriptul de mai jos scrie Salut JavaScript! ı̂ntr-un element HTML cu
id=”demo”:
1 <body>
2 <p id="demo"></p>
3 <script>
4 document.getElementById("demo").innerHTML = "Salut JavaScript!";
5 </script>
6 </body>