Va rugam dezactivati programul ad block pentru a vizualiza pagina!

Rezultate pentru tag: mg




Proiecții ortogonale pe un plan

Proiecția unui punct pe un plan. Proiecția unui segment pe un plan. Lungimea proiecției unui segment pe un plan. Proiecția unei drepte pe un plan.

Teorema celor trei perpendiculare

Distanța de la un punct la o dreaptă în spațiu. Teorema celor trei perpendiculare. Enunțul și demonstrația teoremei celor trei perpendiculare. 

Unghiul a două plane

Unghi diedru. Unghi plan al unui diedru. Determinarea măsurii unghiului format de două plane

Prisma triunghiulară regulată

Aria prismei și volumul prismei. Deducerea formulelor de calcul pentru arie prismă triunghiulară și volum prismă triunghiulară regulată. Aria laterală a prismei triunghiulare regulate. Aria totală a prismei triunghiulare regulate. Volumul unei prisme triunghiulare regulate.

Propagarea luminii. Reflexia si refracţia.

Propagarea luminii în medii omogene: constanţa vitezei şi conceptul de rază de lumină. Legile reflexiei şi refracţiei. Reflexia totală: definiţie, aplicaţii.

Prisma. Oglinzi plane şi sferice.

Prisma optică. Formarea imaginilor. Oglinda plană. Oglinzi sferice: proprietăţi, construcţia imaginilor.

Calculul lentilelor. Sisteme de lentile.

Folosim formula Descartes pentru a calcula proprietăţile imaginii formate într-o lentilă. Prezentăm sistemele centrate şi acolate de lentile.

Microscopul. Ochiul uman.

Exemple de instrumente optice cu sisteme centrate de lentile: microscopul (parametri, exemple) şi ochiul uman (componente, acomodarea).

Dispersia luminii.

Definiţia dispersiei. Descompunerea luminii albe în spectrul de radiaţii vizibile. Dispersia în prisma optică. Dispersia normală şi anomală.

Lama cu feţe plan paralele.

Aplicaţii ale interferenţei nelocalizate. Lama cu feţe plan paralele: franjele de egală înclinare. Stratul antireflex.

Pana optică.

Interferometre cu interferenţă localizată. Pana optică: franje de egală grosime. Inelele Newton.

Difracţia luminii.

Definiţie, exemple. Franje de difracţie printr-o fantă. Reţele de difracţie.

Polarizarea luminii.

Stările de polarizare a luminii. Polarizarea prin reflexie - legea Brewster. Polarizarea prin transmisie - polarizorii. Legea Malus. Birefringenţa.

Noțiuni introductive

Materia, substanțe, molecule, atomi, ioni. Particulele subatomice: electroni, protoni, neutroni. Unitatea atomică de masă (u.a.m.) și sarcina electrică. Numărul atomic Z, numărul de masă A, numărul de neutroni N.

Masă atomică. Izotopi. Mol de atomi

Masa atomică relativă medie. Compoziția procentuală a izotopilor în natură. Numărul lui Avogadro.

Noţiuni de cinematică.

Introducem noţiunile şi mărimile de bază ale cinematicii. Discutăm ecuaţia de mişcare. Prezentăm definiţia şi proprietăţile vectorilor.

Viteza şi acceleraţia.

Metode de adunare şi scadere a vectorilor. Viteza medie şi viteza momentană. Acceleraţia medie şi acceleraţia momentană.

Echilibrul de translaţie.

Echilibrul de translaţie sub acţiunea a două sau mai multe forţe. Echilibrul punctului material supus la legături.

Momentul forţei. Cuplul de forţe.

Efectul forţelor la rotaţia unui solid rigid. Momentul forţei şi cuplul de forţe. Convenţii de semn.

Lucrul mecanic.

Definiţie. Interpretare geometrică. Forţe conservative. Lucrul mecanic al forţelor elastică şi de greutate.

Oscilaţii forţate. Rezonanţa.

Oscilaţii cuplate şi oscilaţii forţate. Fenomenul de rezonanţă a oscilaţiilor cuplate.

Modelul undei plane.

Unde mecanice: definiţie, mărimi caracteristice. Unde longitudinale şi transversale. Modelul undei plane.

Ecuaţia undei plane.

Deducerea ecuaţiei undei plane. Proprietăţile undei plane: periodicitatea, intensitatea.

Interferenţa undelor.

Interferenţa undelor mecanice. Unde staţionare. Formarea ventrelor si nodurilor.

Noţiuni de termodinamică.

Sistem termodinamic. Stări şi parametri de stare. Procese şi parametri de proces. Echilibru termodinamic.

Teoria cinetico-moleculara: fundamente.

Principiul echipartiţiei energiei pe grade de libertate. Formula fundamentală a teoriei cinetico-moleculare.

Teoria cinetico-moleculara: aplicaţii.

Deducerea legii Dalton. Extinderea modelului gazului ideal la substanţe reale. Clasificarea stărilor de agregare.

Calorimetrie I.

Lucrul mecanic: definiţie, ecuaţii pentru varii procese. Căldura. Coeficienţi calorici: definţii, tipuri.

Calorimetrie II.

Calorimetrul şi utilizarea lui. Ecuaţia calorimetrică. Energia internă.

Principiul I. Maşina termică.

Principiul I al termodinamicii. Maşina termică. Perpetuum mobile de speţa I şi II. Relaţia Mayer.

Motoare termice.

Randamentul maşinii termice. Motoarele termice Otto şi Diesel.

Ciclul Carnot.

Ciclul Carnot. Teorema Carnot: randament maxim. Motorul cu reacţie.

Entropia. Principiul II.

Entropia: definiţie, interpretare. Procese reversibile şi ireversibile. Principiul II al termodinamicii.

Lichefierea, topirea. Diagrama de fază.

Izotermele Andrews ale gazului real. Lichefierea. Topirea şi solidificarea. Diagramele de fază. Punctul triplu.

Legea Coulomb. Câmpul electric.

Sarcina electrică. Legea Coulomb a interacţiunii electrostatice. Câmpul electric, linii de câmp.

Mărimile câmpului electric. Capacitatea electrică.

Potenţialul electric, tensiunea electrică, lucrul mecanic electric. Energia potenţială electrostatică. Capacitatea electrică.

Condensatorul electric.

Condensatorul electric. Condensatorul plan. Gruparea în serie şi paralel a condensatoarelor.

Tensiunea şi intensitatea.

Mecanismul de generare a curentului electric. Tensiunea electromotoare. Intensitatea curentului electric.

Rezistenţa. Legea Ohm.

Rezistenţa şi rezistivitatea electrica. Supraconductibilitatea. Legea Ohm pentru o porţiune şi pentru întregul circuit.

Legile Kirchhoff.

Reţele electrice. Legile Kirchhoff. Convenţii de semn. Exemplu de aplicare.

Gruparea rezistoarelor.

Grupările în serie şi paralel ale rezistoarelor. Grupările în stea şi triunghi ale rezistoarelor.

Gruparea generatoarelor.

Gruparea în serie şi paralel a generatoarelor. Metoda superpoziţiei de calcul a reţelelor.

Măsurători electrice.

Şuntul ampermetrului. Rezistenţa adiţională a voltmetrului. Montaje aval şi amonte. Puntea Wheastone.

Legea Joule. Electroliza.

Energia electrică – legea Joule. Puterea electrică. Randamentul electric. Efectul chimic - electroliza.

Legea Faraday.

Legea Faraday. Tensiunea electromotoare. Autoinducţia. Inductanţa: definiţie, solenoidul.

Generarea tensiunii alternative.

Energia câmpului magnetic. Exemplu: bobina. Generarea tensiunii electrice alternative. Aplicaţii.

Mărimile curentului alternativ.

Valorile momentane şi valorile efective ale mărimilor curentului alternativ: fluxul, tensiunea, intensitatea.

Reprezentarea fazoriala.

Reprezentarea fazorială a curentului alternativ. Reprezentarea fazorială polară a curentului alternativ.

Proprietăţile funcţiilor sinusoidale.

Proprietăţile funcţiilor sinusoidale: suma şi viteza de variaţie momentană.

Elemente de circuit: R, L, C.

Elemente de circuit în curent alternativ: rezistorul, bobina, condensatorul.

Circuitele RLC serie şi paralel.

Legea Ohm pentru circuite RLC serie şi paralel. Impedanţa. Construcţia diagramelor fazoriale.

Rezonanţa circuitelor RLC.

Frecvenţa de rezonanţă. Factorul de calitate. Comportarea circuitelor serie şi paralel. Interpretarea energetică.

Puterea în curent alternativ.

Puterea momentană şi puterea medie. Interpretarea geometrică. Triunghiul puterilor: puterile activă, reactivă şi aparentă.

Transformatorul. Alternatorul.

Transformatorul: raportul de transformare, randamentul. Maşini de curent alternativ. Alternatorul.

Oscilaţii electromagnetice.

Circuitul oscilant RLC. Oscilaţii electromagnetice libere, amortizate, forţate. Interpretarea energetică.

Unda electromagnetică.

Principiile Maxwell ale teoriei câmpului electromagnetic. Proprietăţile undei electromagnetice: viteza de propagare, ortogonalitateaE with rightwards arrow on topB with rightwards arrow on top şi v with rightwards arrow on top.

Circuitul oscilant deschis. Antene.

Circuitul oscilant deschis. Antene dipol de emisie şi recepţie. Clasificarea undelor electromagnetice.

Operaţii cu mulţimi

Operaţii cu mulţimi. Reuniunea mulțimilor. Intersecţia mulțimilor. Diferenţa mulțimilor.

Transformările Galilei. Relativitatea clasică.

Spaţiul şi timpul în fizica clasică. Transformările Galilei. Principiul relativităţii clasice. Electromagnetismul - o excepţie.

Experimentul Michelson.

Modelul eterului universal pentru unde electromagnetice. Experimentul Michelson: eşecul modelului eteric şi constanţa vitezei luminii în vid.

Principiile Einstein. Transformările Lorentz.

Principiile Einstein ale relativităţii restrânse. Spaţiu-timpul în fizica relativistă. Transformările Lorentz. Relativitatea simultaneităţii.

Cinematica relativistă.

Sistemul de referinţă propriu. Contracţia lungimilor. Dilatarea duratelor.

Dinamica relativistă. Ecuaţia Einstein.

Dinamica relativistă: masa, impusul şi forţa în fizica relativistă. Ecuaţia Einstein: relaţia masă-energie.

Efectul fotoelectric extern.

Dispozitiv experimental. Legile efectului fotoelectric extern. Eşecul modelului ondulatoriu de a explica efectul.

Ipotezele Planck şi Einstein.

Ipoteza Planck: cuantele de energie. Ipoteza Einstein: fotonul. Explicarea efectului fotoelectric cu formula Einstein şi modelul corpuscular.

Efectul Compton.

Dispozitivul experimental. Calculul variaţiei lungimii de undă. Eşecul modelului ondulatoriu şi succesul modelului corpuscular.

Ipoteza de Broglie. Difracţia electronilor.

Dualismul unda-corpuscul: ipoteza de Broglie. Relaţia de Broglie. Difracţia electronilor: legea Bragg.

Microscopul electronic.

Microscopul electronic: rezoluţia spaţială, funcţionare. Discuţie despre dualismul unda-corpuscul.

Relaţia de incertitudine Heisenberg.

Relatia de incertitudine Heisenberg pentru poziţie-impuls şi pentru timp-energie. Consecinţe. Exemple.

Spectre atomice.

Spectre atomice de emisie şi absorbţie: definiţii, proprietăţi. Legea seriilor spectrale ale hidrogenului. Analiza spectrală.

Postulatele Bohr.

Postulatele Bohr ca şi consecinţe ale experimentelor Rutherford şi Franck-Hertz.

Modelul atomic Bohr I.

Modelul atomic Bohr: condiţia de cuantificare, condiţia de echilibru. Cuantificarea razelor orbitelor.

Modelul atomic Bohr II.

Cuantificarea energiei. Numărul cuantic principal. Cuantificarea vitezei. Cuantificarea vitezei de rotaţie.

Interpretarea spectrelor hidrogenului.

Interpretarea legii seriilor spectrale ale atomului de hidrogen prin modelul Bohr. Calculul constantei Rydberg.

Modelul păturilor electronice.

Modelul păturilor electronice pentru atomi cu mai mulţi electroni (Z>1). Numerele cuantice (n,l,m,mS).

Aplicaţii: radiaţiile X.

Radiaţiile X de frânare şi caracteristice: producere şi proprietăţi. Interacţiunea cu substanţa. Aplicaţii.

Structura învelișului electronic

Electroni. Înveliş electronic - straturi electronice, substraturi electronice, orbitali. Spin electronic.

Configurația electronică a elementelor din primele 3 perioade (Z 1-18)

Straturi electronice, substraturi electronice, orbitali. Spin electronic. Configurația electronică. Reguli de ocupare cu electroni a straturilor şi substraturilor. Principiul lui Pauli. Regula lui Hund.

Configurația electronică a elementelor din perioada a 4-a

Straturi electronice, substraturi electronice, orbitali, spin electronic. Configurația electronică a elementelor din perioada a patra. Diferenţa dintre configuraţia electronică şi ordinea de ocupare cu electroni. Principiul lui Pauli. Regula lui Hund.

Tabelul periodic – grupe şi perioade

Tabelul periodic. Grupe, perioade. Legea periodicității. Grupe principale, Grupe secundare. Electron distinctiv. Metale alcaline. Metale alcalino-pământoase. Halogeni.

Dioda semiconductoare.

Dioda semiconductoare. Joncţiunea PN. Polarizarea directă şi inversă a diodei. Străpungerea joncţiunii.

Aplicaţii ale diodei. Tranzistorul.

Aplicaţii ale diodei: dioda varicap, redresarea curentului alternativ. Tranzistorul cu efect de câmp.

Variaţia energiei de ionizare

Ion, cation, anion. Proprietăți periodice. Energie de ionizare - definiție, variație în tabelul periodic.

Energia de legătură. Stabilitatea nucleară.

Energia de legătură. Energia de legătură pe nucleon. Platoul de stabilitate. Procese de creştere a stabilităţii.

Variaţia proprietăţilor periodice chimice

Proprietățile periodice chimice. Electronegativitate, caracter metalic, caracter nemetalic, valență. Scara electronegativităţii. Elemente electronegative şi elemente electropozitive. Proprietăţile fizice ale metalelor şi nemetalelor. Caracterul bazic şi caracterul acid al oxizilor metalici. 

Legătura ionică. Compuşii ionici.

Regula octetului. Legături chimice. Cedare şi primire de electroni. Punere în comun de electroni. Compuşi ionici. Ioni pozitivi – cationi. Ioni negativi – anioni. Simboluri Lewis. Substanţe cristaline. Proprietăţile compuşilor ionici. 

Legătura covalentă şi compuşii moleculari

Legături covalente. Compuşi moleculari. Legături covalente polare. Molecule polare – molecula de apă şi molecula de acid clorhidirc. 

Legătura coordinativă. Combinaţiile complexe.

Legătura coordinativă. Coordinare. Combinații complexe. Donor, acceptor, ion central, ligand. Număr de coordinare. 

Forţe intermoleculare. Legături de hidrogen.

Forțe intramoleculare şi forțe intermoleculare. Legătura de hidrogen, forțe dipol-dipol, forțe de dispersie London, forțe van der Waals. Proprietățile influențate de forțele intermoleculare: punct de fierbere, punct de topire, stare de agregare. 

Proprietăţile apei

Molecula de apă. Proprietățile apei. Legături de hidrogen. Dipoli. Gheța. Solubilitate, punct de topire, punct de fierbere.

Forţele dipol-dipol şi forţele de dispersie London

Forțe intermoleculare. Legătura de hidrogen, forțe dipol-dipol, forțe de dispersie London, forțe van der Waals. Punct de fierbere, punct de topire, stare de agregare, electronegativitate.

Fuziunea nucleară. TOKAMAK-ul.

Fuziunea nucleară. Reactorul TOKAMAK. Efectul de stricţiune al plasmei.

Valenţa şi numărul de oxidare

Valența, covalența, electrovalența, numărul de oxidare. Electronii de valenţă. Reguli pentru determinarea numerelor de oxidare. Determinarea numerelor de oxidare în funcţie de electronegativitate. Valenţa şi poziţia în tabelul periodic.

Acceleratoare liniare de particule.

Acceleratoare de particule. Acceleratorul liniar rezonant. Sincronismul.

Acceleratoare circulare de particule.

Acceleratoare circulare: ciclotronul şi sincrotronul. Radiaţia sincrotronică. Aplicaţii.

Legea generală a gazelor

Legea gazelor ideale. Legea lui Avogadro. Parametrii de stare ai gazelor. Ecuaţia lui van der Waals. Aplicaţie.

 

Soluţii. Dizolvarea compuşilor ionici şi moleculari în apă.

Soluţii. Amestecuri omogene şi amestecuri eterogene. Solvent/dizolvant şi solut/dizolvat/solvat. Soluţii lichide, gazoase şi solide. Solubilitate. Factorii care influenţează solubilitatea. Apa – cel mai bun solvent. Dizolvarea. Dizolvarea compuşilor ionici în apă. Dizolvarea substanţelor polare în apă. 

Concentraţia soluţiilor. Cristalohidraţi.

Soluţii. Concentraţia. Concentraţia procentuală şi concetraţia molară. Aplicaţie. Cristalohidraţi. Substanţă anhidră, eflorescenţă, higroscopicitate. 

Concentraţia procentuală - aplicaţii

Soluții, dizolvare. Concentrație procentuală. Masă dizolvată, masa soluției. Aplicații.

Concentraţia molară - aplicaţii

Calculul concentraţiei molare a unei soluţii. Regula de trei simplă. Molaritate. Aplicaţii.

Echilibre chimice – legea acţiunii maselor

Reacţia directă, reacţia inversă. Procedeul Haber, obţinerea amoniacului. Starea de echilibru chimic. Variaţia în timp a concetraţiilor şi a vitezelor de reacţie. Reacţii reversibile. Legea acţiunii maselor. Constanta de echilibru. Aplicaţii – legea acţiunii maselor. 

Echilibre chimice – aplicaţie

Viteza reacţiei directe, viteza reacţiei inverse. Starea de echilibru chimic. Constanta de echilibru. Aplicaţii. 

Acizi şi baze. Teoria protolitică.

Reacţia de neutralizare. Acizi, baze. Protonul. Transferul de protoni. Ion hidroniu. Teoria Brönsted-Lowry sau teoria protolitică. Clasificarea acizilor. Acid conjugat, bază conjugată. Cupluri acid-bază conjugate. 

Tăria acizilor şi bazelor – amfoliţi acido-bazici

Acizi tari şi acizi slabi. Ionizarea acizilor tari. Ionizarea acizilor slabi. Constanta de aciditate. Ka. Baze tari şi baze slabe. Ionizarea bazelor tari. Ionizarea bazelor slabe. Constanta de bazicitate, Kb. Caracterul amfoter. Amfoliţi acido-bazici. 

pH-ul soluţiilor apoase

pH – definiţie, semnificaţie matematică. Reacţia de autoprotoliză a apei. Soluţie neutră. Produsul ionic al apei, Kw. Soluţii acide, soluţii neutre şi soluţii bazice. pH neutru, pH bazic şi pH acid. Scala de pH. 

Reacţii redox. Oxidanţi şi reducători.

Transferul de electroni. Reacţia de oxidare. Reacţia de reducere. Numărul de oxidare. Reguli pentru determinarea numerelor de oxidare. Reacţii redox. Agenţi oxidanţi şi agenţi reducători. Caracter oxidant şi carcter reducător. Seria activităţii metalelor. 

Seria activităţii metalelor

Oxidant, reducător. Metale active, metale foarte active şi metale inactive. Atomi metalici, ioni metalici – configuraţia electronică. 

Celule electrochimice

Electrochimie. Celulă electrochimică. Elemente galvanice/voltaice. Conductori metalici şi electroliţi. Electrod, anod, catod. Semicelulă galvanică. Punte de sare. Procesele chimice care au loc la anod şi la catod. Simbolizarea unei celule electrochimice. Pile uscate/baterii. Pila Daniell.

Coroziunea. Prevenirea coroziunii.

Coroziunea. Reacţiile chimice care generează coroziunea. Metode de prevenire a coroziunii. Galvanizarea. Protecţia catodică. 

Transformări de fracții ordinare în fracții zecimale 1

Transformarea fracțiilor ordinare în fracții zecimale. Transformarea fracțiilor ordinare ai căror numitori au in descompunerea lor doar puteri cu baza 2 sau 5.

Mulţimi - noţiuni introductive

Noțiuni introductive privind mulțimile. Relația dintre un element și o mulțime (relația de apartenență). Reprezentarea mulțimilor: cu ajutorul diagramelor, prin enumerarea elementelor și prin enunțarea proprietăților caracteristice elementelor. Mulțimi finite. Mulțimi infinite. Mulțimea vidă. Relații între mulțimi. Submulțimi.

Teorema împărţirii cu rest

Împărțirea cu rest a numerelor naturale. Teorema împarțirii cu rest.

Deîmpărţit = cât x împărţitor + rest, restul < împărţitorul (d = c x î + r, r < î)

Sisteme de numerație

Sistemul de numerație zecimal (baza 10). Sistemul de numerație binar (baza 2). Sistemul de numerație hexazecimal (baza 16). Conversia unui număr dintr-un sistem de numerație în altul.

Proprietăţile divizibilităţii

Proprietățile divizibilității. Proprietăţi ale relaţiei de divizibilitate în mulțimea numerelor naturale N.

Numere prime. Numere compuse

Un număr prim este un număr natural care are exact doi divizori: numărul 1 și numărul în sine. Un număr compus este orice număr natural care are cel puțin 3 divizori. Algoritmul de verificare a numerelor prime.

Numere prime între ele

Se numesc numere prime între ele acele numere naturale, diferite de zero, care au c.m.m.d.c. = 1.

Modulul unui număr întreg

Noțiunea de modul. Valoarea absolută a unui număr întreg. Numere întregi opuse.

Fracţii

Noțiunea de fracție. Identificarea în limbajul cotidian sau în probleme a fracţiilor ordinare.

Fracţii subunitare, echiunitare, supraunitare

Tipuri de fracţii. Clasificarea fracțiilor ordinare în fracții subunitare, fracții echiunitare și fracții supraunitare.

Aducerea fracţiilor la acelaşi numitor

Aflarea numitorului comun a două sau mai multe fracții. Aducerea fracțiilor la același numitor.

Adunarea fracțiilor ordinare pozitive

Adunarea numerelor raționale pozitive reprezentate de fracții care au același numitor sau numitori diferiți.

Scăderea fracțiilor ordinare pozitive

Scăderea numerelor raționale pozitive reprezentate de fracții care au același numitor sau numitori diferiți.

Înmulţirea fracțiilor ordinare pozitive

Înmulțirea unei fracții cu un număr natural. Aflarea unei fracții dintr-un număr. Înmulţirea numerelor raționale pozitive reprezentate prin fracții ordinare.

Intervale de numere reale

Noțiunea de interval. Intervale mărginite de numere reale, intervale nemărginite.  Interval deschis, interval închis. Legătura dintre intervale și modul.  Determinarea soluțiilor unor inecuații (în mulțimea numerelor reale) care au necunoscuta în modul.

Media aritmetică, media ponderată, media geometrică

Formulele pentru medie aritmetică, medie ponderată și medie geometrică a numerelor reale. Inegalitatea mediilor.

Rădăcina pătrată a unui număr rațional pozitiv

Noțiunea de radical. Rădăcina pătrată. Extragerea rădăcinii pătrate.

Adunarea și scăderea numerelor reale reprezentate prin litere

Operații cu numere reale reprezentate prin litere. Adunarea numerelor reale reprezentate prin litere. Scăderea numerelor reale reprezentate prin litere. 

Descompuneri în factori

Descompunerea în factori. Metode de descompunere în factori: metoda factorului comun, formule de calcul prescurtat și metode combinate.

Rapoarte de numere reale reprezentate prin litere

Definirea unui raport algebric. Găsirea domeniului de definiție al unui raport. Amplificarea unui raport. Simplificarea unui raport. Operații cu rapoarte algebrice. Aducerea unei expresii algebrice la forma cea mai simplă.

Ecuații cu numere zecimale

Rezolvarea unor ecuații cu o necunoscută în care apar numere zecimale

Proporţii. Proporţii derivate

Proporţii. Aflarea unui termen necunoscut dintr-o proporţie. Proporţii derivate.

Mărimi direct proporţionale

Rezolvarea problemelor cu mărimi direct proporţioale. Regula de trei simplă pentru mărimi d.p.

Mărimi invers proporționale

Rezolvarea problemelor cu mărimi invers proporţionale. Regula de trei simplă pentru mărimi i.p.

Rapoarte și procente

Raportul a două numere, scara hărții, titlul unui aliaj. Procente, concentrația procentuală

Probabilitatea unui eveniment

Experienţă, eveniment, probabilitatea realizării unui eveniment. Probleme cu probabilități

Inecuaţii în mulțimea numerelor reale

Rezolvarea unor inecuații în mulțimea numerelor reale. Scrierea soluției sub formă de interval.

Sisteme de ecuaţii

Definirea unui sistem de ecuații cu două necunoscute. Soluția unui sistem de ecuații cu două necunoscute.

Ecuaţia de gradul al doilea

Forma unei ecuații de gradul doi. Deducerea formulelor care apar în rezolvarea unei ecuații de gradul al doilea.

Funcții: definiție, terminologie

Definirea noțiunii de funcție. Domeniul de definiție. Codomeniu. Lege de corespondență.

Mulțimea valorilor unei funcții

Imaginea unei funcției (sau mulțimea de valori a funcției). Legătura dintre imaginea unei funcții și codomeniul său.

Funcţii liniare

Funcție liniară. Trasarea graficului unei funcții liniare. Intersecția dintre graficul unei funcții și axele de coordonate.

Graficul unei funcții

Graficul funcției definite pe o mulțime finită. Reprezentarea geometrică a unui grafic funcție. Citirea unui grafic dat.

Unghiuri opuse la vârf

Două unghiuri se numesc unghiuri opuse la vârf dacă laturile lor sunt perechi de semidrepte opuse

Clasificarea triunghiurilor

Clasificarea triunghiurilor după laturi şi după unghiuri: triunghi oarecare, triunghi isoscel, triunghi echilateral, triunghi ascuţitunghic, triunghi dreptunghic, triunghi obtuzunghic

Drepte perpendiculare. Distanţa de la un punct la o dreaptă

Drepte perpendiculare. Distanţa de la un punct la o dreaptă. Două drepte concurente care formează un unghi drept se numesc drepte perpendiculare.

Mediatoarea unui segment. Concurenta mediatoarelor laturilor unui triunghi

Linii importante în triunghi: mediatoarea, concurența mediatoarelor. Centrul cercului circumscris triunghiului. Proprietatea punctelor situate pe mediatoarea unui segment. Noțiunea de 'Teoremă directă' și 'Teoremă reciprocă'

Bisectoarea unui unghi. Concurența bisectoarelor unghiurilor unui triunghi

Linii importante în triunghi: bisectoarea, concurența bisectoarelor. Proprietatea punctelor situate pe bisectoarea unui unghi. Centrul cercului înscris în triunghi.

Drepte paralele. Criterii de paralelism

Drepte paralele tăiate de o secantă. Unghiuri alterne interne. Unghiuri alterne externe. Unghiuri corespondente. Unghiuri interne de aceeaşi parte a secantei. Unghiuri externe de aceeaşi parte a secantei. Axioma lui Euclid. Distanța dintre două drepte paralele.

Drepte paralele intersectate de o secantă

Drepte paralele intersectate de o secantă. Unghiuri alterne interne. Unghiuri alterne externe. Unghiuri corespondente. Unghiuri interne de aceeaşi parte a secantei. Unghiuri externe de aceeaşi parte a secantei. 

Proprietați ale triunghiurilor oarecare

Suma masurilor unghiurilor unui triunghi este de 180 de grade. Unghi exterior unui triunghi.Teorema unghiului exterior. Bisectoarea interioară și bisectoarea exterioară a unui triunghi. Relații între unghiurile și laturile unui triunghi.

Mediana în triunghi. Concurența medianelor laturilor unui triunghi

Linii importante în triunghi: mediana, concurența medianelor unui triunghi. Centru de greutate al triunghiului. Mediana împarte un triunghi în două triunghiuri echivalente. 

Proprietăţile triunghiului isoscel

Proprietăţile triunghiului isoscel. Un triunghi isoscel are două unghiuri congruente. Într-un triunghi isoscel, mediana, înălțimea, bisectoarea și mediatoarea corespunzătoare bazei coincid.

Proprietăţile triunghiului echilateral

Triunghiul echilateral. Un triunghi echilateral are toate unghiurile congruente. Într-un triunghi echilateral, toate liniile importante ce pornesc din același vârf coincid.

Proprietăţile triunghiului dreptunghic

Triunghiul dreptunghic. Proprietăţile triunghiului dreptunghic. Mediana într-un triunghi dreptunghic este jumătate din ipotenuză. Cateta opusă unghiului de 30 de grade este jumătate din ipotenuză

Patrulatere convexe

Patrulater convex. Patrulater concav. Suma măsurilor unghiurilor unui patrulater convex este de 360 de grade

Paralelogramul

Patrulaterul convex care are laturile opuse paralele se numește paralelogram. Proprietățile paralelogramului. Modalități de a demonstra că un patrulater este paralelogram.

Dreptunghiul

Paralelogramul care are un unghi drept se numește dreptunghi. Proprietățile dreptunghiului. Modalități de a demonstra că un patrulater este dreptunghi.

Rombul

Paralelogramul care are două laturi consecutive congruente se numește romb. Proprietățile rombului. Modalități de a demonstra că un patrulater este romb.

Pătratul

Un paralelogram care este și dreptunghi și romb se numește pătrat. Proprietățile pătratului. Modalități de a demonstra că un patrulater este pătrat.

Trapezul

Patrulaterul care are două laturi opuse paralele, iar celelalte două neparalele se numește trapez. Definiția unui trapez isoscel. Proprietățile trapezului isoscel. Modalități de a demonstra că un trapez este isoscel.

Teorema lui Thales

Teorema lui Thales: O paralelă dusă la una din laturile unui triunghi determină pe celelalte două laturi (sau pe prelungirile acestora) segmente proporţionale.

Teorema reciprocă a Teoremei lui Thales

Folosim reciproca Teoremei lui Thales pentru a demonstra că două drepte sunt paralele.

Linia mijlocie în triunghi

Linie mijlocie în triunghi este un segment care uneşte mijloacele a două laturi ale triunghiului. Proprietățile liniei mijlocii.

Linia mijlocie în trapez

Segmentul care uneşte mijloacele laturilor neparalele ale unui trapez se numeşte linie mijlocie a trapezului.

Triunghiuri asemenea

Două triunghiuri se numesc triunghiuri asemenea dacă au toate laturile respectiv proporţionale şi toate unghiurile respectiv congruente

Teorema fundamentală a asemănării

O paralelă la una din laturile unui triunghi formează cu celelalte două laturi (sau cu prelungirile lor) un triunghi asemenea cu cel dat.

Proiecţii ortogonale pe o dreaptă

Proiecţia ortogonală a unui punct pe o dreaptă, proiecția ortogonală a unui segment pe o dreaptă

Teorema înălţimii

Într-un triunghi dreptunghic, lungimea înălțimii corespunzătoare unghiului drept este medie proporțională între lungimile proiecțiilor catetelor pe ipotenuză. Teorema înălțimii și reciproca.

Teorema catetei

Într-un triunghi dreptunghic, lungimea unei catete este medie proporțională între lungimea proiecției sale pe ipotenuză şi lungimea ipotenuzei.Teorema catetei și reciproca.

Teorema lui Pitagora

Într-un triunghi dreptunghic, suma pătratelor lungimilor catetelor este egală cu pătratul lungimii ipotenuzei.

Reciproca teoremei lui Pitagora

Dacă într-un triunghi pătratul lungimii unei laturi este egal cu suma pătratelor lungimilor celorlalte două laturi atunci triunghiul este dreptunghic.

Rezolvarea triunghiului dreptunghic

Rezolvarea triunghiului dreptunghic folosind funcții trigonometrice și teorema lui Pitagora.

Cercul- definiție, elemente

Definiția cercului. Elementele unui cerc: rază, diametru, coardă. Centrul cercului. Arc de cerc. Semicerc. Puncte diametral opuse. Definiția unui disc.

Unghi la centru

Unghi cu vârful în centrul cercului. Măsura unui unghi la centru. Măsura unui arc de cerc. Arce congruente.

Coarde şi arce in cerc

Teoreme referitoare la coarde și arce în cerc. Coarde congruente. Arce congruente. Diametru perpendicular pe o coardă.

Unghi înscris în cerc

Unghi cu vârful pe cerc. Măsura unui unghi înscris în cerc. Unghi înscris în semicerc. Triunghi înscris în cerc.

Patrulater înscris în cerc; patrulater inscriptibil

Un patrulater se numește patrulater înscris în cerc dacă vârfurile sale aparțin cercului. În acest caz cercul se numește cerc circumscris patrulaterului. Proprietatea unui patrulater înscris în cerc. Patrulater inscriptibil.

Pozitiile relative ale unei drepte faţă de un cerc

Dreaptă exterioară cercului. Tangenta la cerc. Punct de tangență. Dreaptă secantă față de cerc. Tangenta dintr-un punct exterior la un cerc. Triunghi circumscris unui cerc.

Poligoane regulate (înscrise în cerc). Calculul elementelor în poligoane regulate

Măsura unui unghi al unui poligon regulat cu n laturi. Măsura unghiului la centru al unui poligon cu n laturi. Latura și apotema unui poligon. Suma măsurilor unghiurilor unui poligon convex. Măsura unui unghi al unui poligon regulat. Formula pentru arie poligon regulat, în funcţie de raza cercului circumscris.

Introducere în geometria în spaţiu

Noțiunile de bază ale geometriei în spațiu și relațiile care se stabilesc între ele.

Tetraedrul

Descrierea tetraedrului. Elementele unui tetraedru. Desfășurarea tetraedrului.Tetraedru regulat.

Paralelipipedul dreptunghic

Descrierea unui paralelipiped dreptunghic. Elementele unui paralelipiped dreptunghic. Diagonala paralelipipedului. Desfășurarea paralelipipedului.

Teoreme de paralelism

Enunțarea unor teoreme importante de paralelism în spațiu. Modalități de a demonstra că două plane sunt paralele.

Dreaptă perpendiculară pe plan

Modalități de a demonstra că o dreaptă este perpendiculară pe un plan. Definiția unei drepte perpendiculare pe un plan.

Teoreme de perpendicularitate

Enunțarea unor teoreme de perpendicularitate. Cum arătăm că o dreaptă este perpendiculară pe un plan

Distanţe în spațiu. Perpendiculare și oblice.

Distanța dintre două puncte. Distanța dintre un punct și o dreaptă. Distanța dintre un punct și un plan. Distanța dintre două plane. Oblică la plan.

Secțiuni paralele cu baza în corpuri geometrice

Secțiune în corp geometric. Secțiuni paralele cu baza în prismă. Secțiuni paralele cu baza în corpuri rotunde. Secțiuni paralele cu baza în piramide.

Trunchiul de piramidă (definiție, elemente)

Trunchi de piramidă. Definiția și elementele trunchiului de piramidă. Înălțimea trunchiului. Apotema trunchiului. Apotema bazei mari, apotema bazei mici. Trunchi de piramidă patrulateră regulată. Trunchi de piramidă triunghiulară regulată. 

Corpuri geometrice asemenea

Corpuri asemenea. Definiția a două piramide asemenea. Raport de asemănare. Raportul ariilor a două suprafețe omoloage. Raportul volumelor a două piramide asemenea. 

Poziții relative a două drepte în spațiu

Stabilirea pozițiilor relative a două drepte în spațiu. Drepte paralele, drepte concurente, drepte necoplanare.

Unghiuri în spațiu (Unghiul a două drepte în spațiu)

Unghiul format de două drepte paralele, concurente sau necoplanare. Determinarea măsurii unghiului format de două drepte necoplanare.

Poziții relative ale unei drepte față de un plan

Dreaptă inclusă în plan, dreaptă secantă unui plan, dreaptă paralelă cu un plan. Cum demonstrăm că o dreaptă este paralelă cu un plan

Poziții relative a două plane

Plane confundate, plane secante, plane paralele. Cum demonstrăm că două plane sunt confundate sau secante sau paralele

Unghiul unei drepte cu un plan

Unghiul dintre o dreaptă și un plan. Măsura unghiului format de o dreaptă cu un plan.

Piramida patrulateră regulată

Descrierea piramidei patrulatere regulate. Elementele unei piramide patrulatere. Înalțimea piramidei. Apotema piramidei. Apotema bazei. Desfășurarea piramidei patrulatere.

Prisma

Descrierea prismei. Elementele unei prisme. Înălțimea prismei. Prisma dreaptă. Prisma oblică. Desfășurarea prismei.

Cubul

Descrierea cubului. Elementele unui cub. Diagonala cubului. Desfășurarea cubului.

Piramida triunghiulară regulată

Descrierea piramidei triunghiulare regulate. Elementele unei piramide triunghiulare. Înalțimea piramidei. Apotema piramidei. Apotema bazei. Desfășurarea piramidei triunghiulare.

Alcani – nomenclatură, proprietăţi fizice, aplicaţii practice

Alcani, izoalcani. Metan, etan, propan, butan, izobutan. Izomerie de catenă. Serie omoloagă. Corelaţia dintre structura alcanilor şi proprietăţile fizice (starea de agregare, temperatura de fierbere).

Alcani – proprietăţi chimice

Reacţii care au loc cu scindarea legăturilor C – C. Reacţii care au loc cu scindarea legăturilor C – H. Arderea alcanilor. Reacţia de substituţie – halogenarea alcanilor. Reacţia de dehidrogenare – piroliza, cracarea. Izomerizarea alcanilor. Izomerizarea n-butanului. Cifra octanică a benzinelor. Solubilitatea alcanilor. 

Alchene – nomenclatură, proprietăţi fizice, aplicaţii practice

Serie omoloagă. Nomenclatură. Atomi de carbon vinilici şi atomi de carbon alilici. Caracteristicile legăturii duble. Izomerie geometrică (izomeri cis-trans). Izomerie de catenă. Izomerie de funcţiune. Izomerie de poziţie. Proprietăţi fizice

Alchene – proprietăţi chimice

Reacţii specifice hidrocarburilor nesaturate – reacţii de adiţie, de oxidare şi de polimerizare. Hidrogenarea alchenelor, halogenarea alchenelor, adiţia hidracizilor la alchene, adiţia apei la alchene. Oxidare blândă şi oxidare energică. Reacţii comune cu hidrocarburile saturate – reacţii de ardere, reacţii de substituţie. Regula lui Markovnikov. Polimeri vinilici. 

Alchine – nomenclatură, proprietăţi fizice

Caracteristicile legăturilor covalente triple. Nomenclatură. Izomerie de constituţie – izomerie de catenă şi izomerie de poziţie. Structura alchinelor. Proprietăţi fizice.

Alchine – proprietăţi chimice

Hidrogenarea acetilenei. Adiţia halogenilor. Adiţia apei. Tautomerizare. Adiţia hidracizilor. Dimerizarea şi trimerizarea acetilenei. Obţinerea vinilacetilenei şi a benzenului. Reacţii de substituţie.

Arene – nomenclatură, clasificare şi proprietăţi fizice

Hidrocarburi aromatice. Structuri de rezonanţă (structuri limită). Benzenul. Modelul Kékulé. Structura inelului benzenic. Caracter aromatic. Clasificarea arenelor. Nomenclatură. Poziţiile orto-, meta-, şi para-. Proprietăţi fizice. 

Arene – proprietăţi chimice (substituţie la nucleul aromatic)

Reacţiile specifice hidrocarburilor aromatice. Reacţii de substituţie la nucleul benzenic. Orientarea reacţiilor de substituţie. Substituenţi de gradul I. Substituenţi de gradul II. Nitrarea toluenului. Reacţia de halogenare a benzenului şi a naftalinei. Reacţia de sulfonare a benzenului şi a naftalinei. Reacţia de alchilare Friedel – Crafts. Reacţia de acilare Friedel – Crafts. 

Arene – adiţie la nucleul aromatic, reacţii la catena laterală

Reacţia de hidrogenare a benzenului, a naftalinei şi a antracenului. Reacţii caracteristice catenei laterale – halogenarea şi oxidarea. Poziţia benzilică. Oxidare blândă şi oxidare energică. 

Legături covalente în compuşii organici

Tipuri de catene de atomi de carbon. Tipuri de legături covalente în compuşii organici. Orbitali moleculari de legătură. Hibridizare. Orbitali hibrizi. Hibridizare sp3. Hibridizare sp2. Hibridizare sp. Caracteristicile legăturilor covalente. Legătură σ, legătură π, geometrie tetraedrică, geometrie trigonal-planară, geometrie liniară.

Structura compuşilor organici – formule moleculare şi formule structurale

Structură chimică. Analiza elementală. Determinarea formulei procentuale, a formulei brute şi a formulei moleculare (exemple de calcul). Formule structurale: formule de proiecţie, formule de proiecţie restrânse (plane). Izomerie. Izomeri geometrici (izomeri cis-trans). 

Reacţii ale compuşilor organici

Clasificarea reacţiilor chimice ale compuşilor organici. Schema generală a unei reacţii. Substrat organic şi reactant. Reacţii de substituţie. Reacţii de adiţie. Reacţii de eliminare. Reacţii de transpoziţie. 

Reacţii de alchilare

Agenţi de alchilare. Alchilarea Friedel-Crafts. Alchilarea arenelor cu alchene. Alchilarea aminelor. Alchilări cu oxid de etenă. Obţinerea oxidului de etenă. Alchilarea aminelor cu oxid de etenă. Alchilarea alcoolilor cu oxid de etenă. 

Reacţii de polimerizare

Importanţa reacţiilor de polimerizare. Schema generală a unei reacţii de polimerizare. Proprietăţile polimerilor. Procedee de polimerizare – polimerizare radicalică, reacţia de policondensare. Radicali liberi. Polimerizarea radicalică. Polimeri vinilici. Reacţia de coplimerizare. Copolimeri. 

Reacţii de esterificare

Obţinerea esterilor. Derivaţi funcţionali ai acizilor carboxilici. Aplicaţii industriale ale reacţiilor de esterificare. Obţinerea aspirinei. Acidul acetilsalicilic. 

Reacţii de condensare şi policondensare

Reacţii de condensare între compuşii carbonilici – condensarea aldolică şi crotonică. Componentă carbonilică şi componentă metilenică. Reacţii de policondensare. Obţinerea şi proprietăţile fenoplastelor – bachelita şi novolacul. 

Izomerie optică – chiralitatea

Clasificarea izomerilor în izomeri de constituţie şi stereoizomeri. Clasificarea stereoizomerilor în izomeri de conformaţie şi izomeri de configuraţie. Clasificarea izomerilor de configuraţie în enantiomeri şi diastereoizomeri. Chiralitate. Obiecte chirale şi obiecte achirale. Atom de carbon asimetric. Centru de chiralitate. Molecule chirale şi molecule achirale. Enantiomeri

Configuraţia enantiomerilor. Formule de perspectivă, formule Fischer

Formule de perspectivă. Formule de proiecţie Fischer. Configuraţia enantiomerilor. Sistemul R, S. Denumirea enantiomerilor reprezentaţi prin formule de perspectivă. Denumirea enantiomerilor reprezentaţi prin formule de proiecţie Fischer. 

Acizi carboxilici. Acidul acetic.

Caracteristicile şi structura grupei funcţionale carboxil. Obţinerea acidului acetic/oţetului de vin – fermentaţia acetică. Proprietăţile fizice şi chimice ale acidului acetic. Reacţia cu metale active, cu oxizi metalici, cu sărurile acidului carbonic şi cu hidroxizii alcalini. Reacţia de esterificare. 

Fenoli

Clasificarea fenolilor. Nomenclatură. Caracteristicile grupei hidroxil fenolice. Proprietăţi fizice. Proprietăţi chimice – reacţii specifice grupei hidroxil şi reacţii specifice nucleului aromatic. Reacţia cu metalele alcaline. Reacţia cu hidroxizii alcalini. Reacţii de substituţie la nucleul aromatic – reacţia de sulfonare şi reacţia de nitrare a fenolului. Aplicaţii practice. 

Derivaţi halogenaţi – importanţă, proprietăţi fizice

Aplicaţii practice ale derivaţilor halogenaţi. Clasificare. Nomenclatură. Caracteristicile legăturilor C – halogen. Proprietăţi fizice. Obţinere.

Amine

Clasificarea şi nomenclatura aminelor. Caracteristicile grupei funcţionale amino. Proprietăţi fizice. Caracterul bazic al aminelor. Amine aromatice. Reacţii de substituţie. Reacţii de alchilare. Obţinerea sărurilor de arendiazoniu. Aplicaţii practice. 

Compuşi carbonilici

Grupa funcţională carbonil. Aldehide şi cetone. Nomenclatura aldehidelor. Nomenclatura cetonelor. Proprietăţi fizice. Reacţii de adiţie – adiţia hidrogenului. Reacţii de oxidare. Aplicaţii practice. 

Zaharide - Glucoza

Compuşi organici cu acţiune biologică. Compuşi cu mai multe grupe funcţionale. Zaharide – polihidroxialdehide şi polihidroxicetone. Monozaharide. Zaharide de policondensare. Glucoza. Structura zaharidelor. Proiecţii Fischer – notaţii D şi L. Atom de carbon asimetric. Importanţa biologică a glucozei. Aplicaţiile practice ale glucozei.

Proteine

Aminoacizi – structură şi nomenclatură. Peptide şi polipeptide. Reacţia de policondensare a aminoacizilor. Legătura peptidică. Clasificarea proteinelor. Funcţii. Proprietăţi fizice. Proteine simple şi proteine conjugate. Grupe prostetice. Denaturarea proteinelor. Factori denaturanţi. 

Aria cercului (discului); Aria sectorului de cerc

Formula de calcul pentru aria cercului. Aria discului. Aria sectorului de cerc. Exemplu de calcul pentru aria cercului.

Aminoacizi

Proteine, peptide, aminoacizi. Legătură peptidică, rest de aminoacid. Cei 20 de aminoacizi naturali. Structura aminoacizilor. Sistemul D, L. Aminoacizii - seria sterică L. Reacţii stereospecifice. Proprietăţi chimice ale aminoacizilor. Amfion (formă dipolară). Clasificarea aminoacizilor în funcţie de polaritatea radicalului hidrocarbonat. Caracterul amfoter al aminoacizilor. Soluţii tampon. 

Zaharide

Fotosintesză, respiraţie. Funcţia zaharidelor în organismele vii. Monozaharide - aldoze, cetoze. D-glucoza, D-fructoza, D-riboza. Formule de proiecţie Fischer. Strucutra ciclică a D-glucozei şi D-ribozei. Adiţie intramoleculară. Semiacetali, semicetali. Anomer α, anomer β, mutarotaţie, centru anomeric. Ciclu piranozic, ciclu furanozic. Formule Haworth. Hidroxil glicozidic. Dizaharide - zaharoză. Polizaharide - amidon, celuloză.

Acizi nucleici - mononucleotide, polinucleotide

Secvenţă de nucleotide. Acid deoxiribonucleic (ADN) şi acid ribonucleic (ARN). Informaţie genetică. Structura acizilor nucleici. Mononucleotide - pentoză, acid fosforic, baze azotate. Baze purinice şi baze pirimidinice. Riboză şi deoxiriboză. Nucleozide. Policondensarea mononucleotidelor. 

Mulțimea numerelor întregi. Axa numerelor

Mulțimea numerelor întregi. Numere întregi pozitive și negative. Reprezentarea pe axă a numerelor întregi.

Inecuații în mulțimea numerelor întregi

Rezolvarea inecuațiilor în mulțimea numerelor întregi. Inecuații cu modul

Simetria față de o dreaptă

Simetricul unui punct față de un punct. Simetricul unui punct față de o dreaptă. Axa de simetrie. Simetrica unei figuri față de o axă 

Înmulțirea, împărțirea și ridicarea la putere a numerelor reale reprezentate prin litere

Operații cu numere reale reprezentate prin litere. Înmulțirea numerelor reale reprezentate prin litere. Împărțirea numerelor reale reprezentate prin litere. Ridicarea la putere a numerelor reale reprezentate prin litere.

Mulțimea numerelor reale

Număr real. Mulțimea numerelor reale. Definiția unui număr irațional. Numere iraționale. Relația de incluziune dintre mulțimile N, Z, Q, R.

 

Axa numerelor reale. Ordonare

Reprezentarea numerelor reale pe axa numerelor. Ordonarea numerelor reale. Partea întreagă a unui număr real. Partea fracționară a unui număr real.

Ecuații în mulțimea numerelor reale

Rezolvarea ecuațiilor în mulțimea numerelor reale. Ecuații de gradul I. Ecuații simple de gradul al II-lea.

Produsul cartezian a două mulțimi

Elemente de organizare a datelor. Produs cartezian a două mulțimi. Sistem de axe ortogonale.

Mulțimea numerelor raționale

Numere raționale. Mulțimea numerelor raționale. Forme de scriere a unui număr rațional. Transformarea fracțiilor ordinare în fracții zecimale.

Ordonarea numerelor raționale

Compararea fracțiilor ordinare având același numitor sau numitori diferiți. Compararea a două fracții cu același semn sau cu semne diferite. Ordonarea numerelor raționale. Partea întreagă și partea fracționară a unui număr rațional.

Adunarea numerelor raționale

Adunarea numerelor raționale având același semn sau semne diferite.

Scăderea numerelor raționale

Scăderea numerelor raționale având același semn sau semne diferite.

Aria pătratului

Formula pentru arie pătrat. Exercițiu cu aria unui pătrat.

Unghiuri - definiție și clasificare

Clasificarea unghiurilor. Unghi nul, unghi alungit, unghi ascuțit, unghi obtuz, unghi drept.

Poligoane

Linii frânte, poligoane. Elementele unui poligon: laturi, vârfuri, unghiuri, diagonale.

Triunghiul

Triunghiul. Definiția triunghiului. Elementele unui triunghi. 

Patrulatere

Pătrat, dreptunghi, romb, paralelogram, trapez. Prezentare prin descriere și desen. 

Cercul

Linii curbe. Cercul. Elmentele unui cerc. Centrul cercului. Raza cercului. Diametrul cercului.

Corpuri geometrice

Cubul, paralelipipedul dreptunghic, piramida, cilindrul, conul, sfera. Recunoașterea elementelor: muchii, fețe, vârfuri.

Perimetre

Perimetrul unui poligon. Perimetrul triunghiului. Perimetrul pătratului. Perimetrul dreptunghiului. Perimetrul paralelogramului. Perimetrul rombului. Perimetrul trapezului.

Aria unui dreptunghi

Deducerea formulei pentru arie dreptunghi. Exemplu de calcul pentru aria dreptunghiului.

Aria unui pătrat

Deducerea formulei pentru arie pătrat. Exemplu de calcul pentru aria pătratului.

Volumul cubului

Formula de calcul pentru volumul unui cub.

Aria paralelogramului

Formula pentru arie paralelogram. Înălțimea unui paralelogram. Aria paralelogramului folosind sinusul. Probleme cu aria unui paralelogram.

Aria rombului

Formula pentru arie romb. Aria rombului folosind sinusul. Probleme cu aria unui romb.

Aria trapezului

Formula pentru arie trapez. Înălțimea unui trapez. Probleme cu aria unui trapez.

Teorema bisectoarei

Bisectoarea unui unghi determină pe latura opusă segmente proporționale cu celelalte două laturi.

Latura, apotema și aria triunghiului echilateral înscris în cerc

Latura triunghiului echilateral în funcție de raza cercului circumscris. Apotema triunghiului echilateral în funcție de raza cercului circumscris. Formula pentru arie triunghi echilateral în funcție de raza cercului circumscris.

Latura, apotema și aria pătratului înscris în cerc

Latura pătratului în funcție de raza cercului circumscris. Apotema pătratului în funcție de raza cercului circumscris. Formula pentru arie pătrat în funcție de raza cercului circumscris.

Latura, apotema și aria hexagonului regulat înscris în cerc

Latura unui hexagon regulat în funcție de raza cercului circumscris. Formula pentru apotemă hexagon regulat în funcție de raza cercului circumscris. Formula pentru arie hexagon regulat în funcție de raza cercului circumscris. Perimetrul hexagonului.

Noţiuni de termochimie, partea II

Reacţii endoterme. Reacţii exoterme. Efecte termice: degajare de căldură, absorbţie de căldură. Căldura de reacţie. Condiţii standard de determinare a căldurii de reacţie.

Entalpia

Energie cinetică. Energie potenţială. Energie internă. Funcţii de stare şi funcţii de proces. Variabile de stare. Mărimi de stare extensive şi intensive. Transfer de energie internă. Entalpia. Semnificaţia relaţiei de definire a entalpiei. Variaţia entalpiei. Calorimetrie. 

Legea lui Hess. Entalpia de formare standard.

Termochimie. Variaţia entalpiei în reacţiile endoterme. Variaţia entalpiei în reacţiile exoterme. Legea aditivităţii căldurilor de reacţie – Legea lui Hess. Condiţii standard de reacţie. Entalpia molară de formare standard. 

Căldura de combustie

Combustie. Tipuri de combustibili. Entalpia de combustie standard. Ardere completă şi ardere incompletă. Căldura de combustie. Puterea calorică. Condiţii normale pentru măsurarea puterii calorice. Putere calorică inferioară şi putere calorică superioară. 

Aplicaţii

Căldura specifică, c. Căldura specifică molară. Exemple de calcul pentru capitolul termochimie. 

Viteza de reacţie

Cinetica chimică – definiţie. Viteza medie de reacţie. Variaţia concentraţiei reactanţilor şi a produşilor de reacţie în timp. Exemplu de calcul pentru viteza medie de reacţie. Clasificarea reacţiilor chimice în funcţie de viteza de reacţie. Reacţii rapide. Reacţii cu viteză moderată. Reacţii lente. Măsurarea vitezei de reacţie. 

Energia de activare. Teoria complexului activat.

Redistribuirea legăturilor chimice în timpul unei reacţii. Ciocniri eficace. Ciocniri ineficace. Energie de activare. Stare de tranziţie sau complex activat. Energia potenţială a complexului activat. Reprezentarea grafică a energiei de activare pentru o reacţie endotermă şi pentru o reacţie exotermă. Energia de activare a reacţiei directe şi energia de activare a reacţiei inverse. Teoria complexului activat. Condiţia geometrică şi condiţia energetică pentru ciocniri eficace. 

Legea vitezei de reacţie

Viteza de reacţie. Variaţia vitezei de reacţie în funcţie de concentraţia reactanţilor şi în funcţie de concentraţia produşilor. Legea vitezei de reacţie. Expresia matematică a vitezei de reacţie. Constanta vitezei de reacţie. Ordine parţiale de reacţie. Ordin total de reacţie. Ordine parţiale de reacţie vs coeficienţi stoechiometrici. 

Influenţa suprafeţei de contact şi a temperaturii asupra vitezei de reacţie

Factorii care influenţează viteza de reacţie. Influenţa suprafeţei de contact asupra vitezei de reacţie. Influenţa temperaturii asupra vitezei de reacţie. Dependenţa constantei de viteză de temperatură. Relaţia lui Arrhenius. Semnificaţia matematică a elementelor din relaţia lui Arrhenius. Determinarea energiei de activare. Metoda grafică de determinare a energiei de activare. 

Influenţa catalizatorilor asupra vitezei de reacţie

Catalizatori – definiţie şi mod de funcţionare. Reprezentarea grafică a energiei de activare pentru o reacţie necatalizată şi o reacţie catalizată. Etapa determinantă de viteză. Reacţii catalitice. Proprietăţile catalizatorilor - activitatea catalitică, selectivitatea. Promotorii şi otrăvurile. Tipuri de reacţii catalitice –reacţii omogene, eterogene şi enzimatice. Suport catalitic. Inhibitori. 

Aplicaţii

Timp de înjumătăţire. Unităţi de măsură pentru constanta de viteză. Exemple de calcul. 

Paralelipipedul dreptunghic

Aria paralelipipedului și volumul paralelipipedului. Deducerea formulelor de calcul pentru arie paralelipiped și volum paralelipiped dreptunghic. Aria laterală a paralelipipedului. Aria totală a paralelipipedului. Volumul unui paralelipiped dreptunghic.

Cubul

Aria cubului și volumul cubului. Deducerea formulelor de calcul pentru arie cub și volum cub. Aria laterală a cubului. Aria totală a cubului. Volumul cubului.

Operații cu numere naturale. Împărțirea

Împărțirea numerelor naturale. Împărțirea exactă (cu rest zero) a două numere naturale. Împărțirea cu rest diferit de zero a două numere naturale. Enunțarea teoremei împărțirii cu rest. 

Ecuații în mulțimea numerelor naturale

Exprimarea ecuațiilor cu ajutorul balanțelor. Rezolvarea principalelor tipuri de ecuații date în mulțimea numerelor naturale

Adunarea și scăderea fracțiilor cu același numitor

Operații cu numere raționale pozitive reprezentate prin fracții care au același numitor. Adunarea fracțiilor cu același numitor. Scăderea fracțiilor cu același numitor. 

Aflarea unei fracții dintr-un număr

Modalități de calcul pentru determinarea unei fracții dintr-un număr natural sau pentru determinarea unei fracții dintr-o altă fracție (înmulțirea a două fracții)

Puteri cu exponent întreg

Puterea cu exponent întreg a unui număr real. Proprietățile puterilor cu exponent întreg. Inversul unui număr. Calculul puterilor cu exponent negativ.

Puteri cu exponent rațional

Puteri cu exponent rațional. Proprietățile puterilor cu exponent rațional. Scrierea puterilor cu exponent rațional cu ajutorul radicalilor. Ordonarea puterilor, compararea puterilor cu exponent rațional. 

Proprietățile logaritmilor

Propritățile logaritmilor: logaritmul produsului, logaritmul raportului, logaritmul unei puteri. Formula pentru schimbarea bazei logaritmului și alte formule logaritmice. Operații cu logaritmi.

Radicali de ordin n

Radicalul de ordin n dintr-un număr real pozitiv. Radicalul de ordin impar dintr-un număr negativ. Proprietățile radicalilor de ordin superior: produsul radicalilor, câtul a doi radicali, puterea unui radical, amplificarea, simplificarea radicalilor, compunerea radicalilor, scoaterea factorilor de sub radical și introducerea factorilor sub radical.

Compararea radicalilor

Aducerea radicalilor la același ordin. Compararea radicalilor de ordin n. Exerciții de ordonare a radicalilor de ordin superior.

Ecuații de gradul I

Forma generală e ecuațiilor de gradul I. Modalitatea teoretică de rezolvare a unei ecuații de gradul întâi. Interpretarea geometrică pentru ecuația de gradul I. Ecuații cu parametru real- exerciții.

Inecuații de gradul I

Forma generală a inecuațiilor de gradul I cu o necunoscută. Modalitatea teoretică de rezolvare a unei inecuații de gradul întâi. Ecuații cu modul, explicitarea modulului.

Sisteme de ecuații simetrice

Ecuații simetrice. Sisteme de ecuații simetrice. Algoritmul de rezolvare a sistemelor simetrice. Sistem simetric fundamental.

Funcția de gradul II

Funcția de gradul al doilea: definiția funcției de gradul II. Noțiuni introductive. Probleme care conduc la funcția de gradul doi. Exemple de funcții de gradul doi. Graficul unei funcții de gradul II.

Monotonia funcției de gradul II

Funcția de gradul II, forma canonică a funcției de gradul al doilea. Punct de minim, punct de maxim. Vârf parabolă- coordonate. Tabel de variație, monotonia funcției de gradul al doilea.

Operații cu radicali. Raționalizarea numitorului

Operații cu radicali de ordin n. Înmulțirea radicalilor, împarțirea radicalilor, ridicarea la putere. Scoaterea și introducerea factorilor sub radical. Amplificarea și simplificarea radicalilor. Compunerea radicalilor. Raționalizarea numitorului. Perechi de expresii conjugate.

Rezolvarea ecuațiilor de gradul II în mulțimea numerelor complexe

Ecuații de gradul al doilea cu soluții complexe. Formarea ecuației de gradul doi când se cunosc soluțiile complexe. Descompunerea trinomului de gradul doi în factori liniari.

Numere complexe scrise sub formă algebrică

Forma algebrică a numerelor complexe. Partea reală a unui număr complex. Partea imaginară a unui număr complex. Definirea operațiilor algebrice cu numere complexe. Puterile numărului complex i. Numere complexe conjugate. Determinarea raportului dintre două numere complexe. Modulul unui număr complex. Conjugatul unui număr complex.

Forma trigonometrică a numerelor complexe

Numere complexe exprimate trigonometric. Coordonate polare în plan. Raza polară. Argumentul unui număr complex. Pentru a determina argumentul redus al unui număr complex vom ține cont de cadranul în care se află imaginea geometrică a numărului complex.

Ridicarea la putere cu exponent natural a fracțiilor zecimale

Ridicarea la putere a fracțiilor zecimale. Calculul unor puteri care au exponentul număr natural și baza număr zecimal. Reguli de calcul cu puteri.

Operații cu intervale de numere reale

Reuniunea intervalelor. Intersecția intervalelor. Diferența dintre un interval și o mulțime finită.

Cubul sumei și al diferenței

Determinarea formulelor de calcul pentru cubul sumei și cubul diferenței de două numere reale.

Raționalizarea numitorului (2)

 Raționalizarea numitorului de forma   a plus-or-minus square root of b Expresii conjugate.

Piramida triunghiulară regulată

Aria piramidei și volumul piramidei. Deducerea formulelor de calcul pentru arie piramidă triunghiulară regulată și volum piramidă triunghiulară regulată. Aria laterală a piramidei triunghiulare regulate. Aria totală a piramidei triunghiulare regulate. Volumul unei piramide triunghiulare regulate.

Piramida patrulateră regulată

Aria piramidei și volumul piramidei. Deducerea formulelor de calcul pentru arie piramidă patrulateră regulată și volum piramidă patrulateră regulată. Aria laterală a piramidei patrulatere regulate. Aria totală a piramidei patrulatere regulate. Volumul unei piramide patrulatere regulate.

Piramida hexagonală regulată

Aria piramidei și volumul piramidei. Deducerea formulelor de calcul pentru arie piramidă hexagonală regulată și volum piramidă hexagonală regulată. Aria laterală a piramidei hexagonale regulate. Aria totală a piramidei hexagonale regulate. Volumul unei piramide hexagonale regulate.

Trunchiul de piramidă regulată

Aria trunchiului de piramidă și volumul trunchiului de piramidă. Deducerea formulelor de calcul pentru arie trunchi de piramidă regulată și volum trunchi de piramidă regulată. Aria laterală a trunchiului de piramidă regulată. Aria totală a trunchiului de piramidă regulată. Volumul unui trunchi de piramidă regulată.

Cilindrul circular drept

Descrierea cilindrului circular drept. Elementele unui cilindru circular drept. Înălțimea cilindrului. Generatoarea unui cilindru. Secțiunea axială a cilindrului. Desfășurarea unui cilindru circular drept. Aria cilindrului și volumul cilindrului. Deducerea formulelor de calcul pentru arie cilindru circular și volum cilindru circular. Aria laterală a cilindrului circular drept. Aria totală a cilindrului circular drept. Volumul cilindrului circular drept.

Conul circular drept

Descrierea conului circular drept. Elementele unui con circular drept. Înălțimea conului. Generatoarea conului. Secțiunea axială a conului. Desfășurarea unui con circular drept. Aria conului și volumul conului. Deducerea formulelor de calcul pentru arie con circular și volum con circular. Aria laterală a conului circular drept. Aria totală a conului circular drept. Volumul conului circular drept.

Trunchiul de con circular drept

Descrierea trunchiului de con circular drept. Elementele unui trunchi de con circular drept. Înălțimea trunchiului de con. Generatoarea trunchiului de con. Secțiunea axială a trunchiului de con. Desfășurarea unui trunchi de con circular drept. Aria trunchiului de con și volumul trunchiului de con. Deducerea formulelor de calcul pentru arie trunchi de con și volum trunchi de con. Aria laterală a trunchiului de con circular drept. Aria totală a trunchiului de con circular drept. Volumul trunchiului de con circular drept.

Sfera

Descrierea unei sfere. Formulele de calcul pentru arie sferă și volum sferă. Probleme cu aria sferei și volumul sferei.

Reprezentarea geometrică a numerelor complexe

Imaginea geometrică a unui număr complex. Interpretarea geometrică a modulului unui număr complex. Interpretarea geometrică a sumei și a diferenței a două numere complexe. Interpretarea geometrică a numerelor complexe opuse și a numerelor complexe conjugate.

Determinarea dreptei și a planului

Modalități de a determina o dreaptă și un plan cu ajutorul unor axiome și a unor teoreme

Plane perpendiculare

Plane perpendiculare. Demonstrarea perpendicularității a două plane.

Noțiuni introductive de logică matematică

Noțiuni generale de logică matematică: propoziții, predicate, cuantificatori. Cuantificatorul existențial, cuantificatorul universal.Propoziție existențială, propoziție universală. Valoarea de adevăr a unei propoziții, mulțimea de adevăr a unui predicat. Propoziții adevărate, propoziții false. Principiile logicii matematice. Exerciții de stabilire a valorii de adevăr a unor propoziții.

Operații logice: negația

Negația propozițiilor, negația predicatelor. Complementara unei mulțimi. Negația propozițiilor care conțin cuantificatori. Valoarea de adevăr a negației unei propoziții. Mulțimea de adevăr a negației unui predicat.

Operații logice: conjuncția

Conjuncția propozițiilor, conjuncția predicatelor. Intersecția mulțimilor. Valoarea de adevăr a conjuncției a două propoziții. Mulțimea de adevăr a conjuncției predicatelor.

Operații logice: disjuncția

Disjuncția propozițiilor, disjuncția predicatelor. Reuniunea mulțimilor. Valoarea de adevăr a disjuncției a două propoziții. Mulțimea de adevăr a disjuncției predicatelor.

Operații logice: implicația

Implicația propozițiilor. Ipoteză, concluzie. Implicația predicatelor. Incluziunea mulțimilor. Valoarea de adevăr a implicației. 

Operații logice: echivalența

Echivalența propozițiilor, echivalența predicatelor. Egalitatea mulțimilor. Valoarea de adevăr a echivalenței a două propoziții.

Formule de calcul propozițional. Legile lui De Morgan

Formulă de calcul propozițional. Formule echivalente. Legile lui De Morgan. Valoarea de adevăr a unei formule propoziționale. Noțiunea de tautologie.

Metoda inducției matematice

Inducție matematică. Etapele principiului inducției matematice (etapa de verificare, etapa de demonstrație). Demonstrația unei propoziții matematice folosind principiul inducției matematice.

Simbolul Sigma și calculul unor sume

Scrierea unor sume restrâns cu ajutorul simbolului Sigma. Proprietățile simbolului Sigma. Calculul unor sume, demonstație prin inducție matematică. Metoda coeficienților nedeterminați.

Șiruri mărginite

Șir mărginit superior, șir mărginit inferior. Mărginirea șirurilor. Definiția șirurilor mărginite, exemple de șiruri mărginite.

Șiruri monotone

Șir crescător, șir descrescător, șir monoton. Definiția șirurilor monotone. Metode prin care se poate studia monotonia șirurilor. Exemple de șiruri monotone.

Progresii geometrice- noțiuni introductive

Noțiunea de progresie geometrică. Proprietățile progresiei geometrice. Exemple de progresii geometrice. 

Proprietățile progresiei geometrice

Termenul general al unei progresii geometrice în funcție de primul termen și de rația progresiei. Condiția ca n numere să fie în progresie geometrică. Suma primilor n termeni ai unei progresii geometrice.

Funcții mărginite

Imaginea unei funcții, noțiunea de funcție mărginită. Graficul unei funcții mărginite. Mărginirea unei funcții numerice.

Funcții pare, funcții impare

Funcție pară, funcție impară. Exemple de funcții pare, funcții impare. Graficul unei funcții pare. Graficul unei funcții impare. Proprietăți ale graficelor. Paritatea funcțiilor - exerciții.

Funcții periodice

Noțiunea de funcție periodică, noțiunea de perioadă, perioadă principală. Exemple de funcții periodice. Proprietăți ale funcțiilor periodice. Graficul unei funcții periodice - proprietate. Periodicitatea funcțiilor - exerciții. 

Monotonia funcțiilor numerice

Funcție crescătoare, funcție descrescătoare, funcție monotonă. Exemple de funcții monotone. Modalități de a studia monotonia funcțiilor. Intervale de monotonie. Exerciții de stabilire a monotoniei funcțiilor.

Compunerea funcțiilor

Compunerea funcțiilor. Proprietăți ale compunerii funcțiilor. Exerciții- funcții compuse.

Funcții numerice- noțiuni introductive

Noțiunea de funcție numerică, modalități de definire a unei funcții numerice și exemple de funcții. Graficul unei funcții. Reprezentarea grafică a unei funcții numerice.

Operații cu funcții numerice

Operații cu funcții: suma funcțiilor, produsul funcțiilor, câtul funcțiilor.

Semnul funcției de gradul I

Semnul funcției de gradul I. Exerciții de stabilire a semnului funcției de gradul I. Semnul unor expresii algebrice. Rezolvarea unor ecuații cu modul și inecuații cu modul, folosind semnul funcției de gradul I.

Relațiile lui Viete. Natura și semnele rădăcinilor ecuației de gradul II

Legătura dintre rădăcinile reale ale ecuației de gradul al doilea și coeficienții acesteia. Formarea ecuației de gradul al doilea când se cunosc rădăcinile. Natura rădăcinilor și semnele rădăcinilor ecuației de gradul al doilea.

Descompunerea trinomului de gradul II

Descompunerea unui trinom de gradul al doilea în factori liniari. Simplificarea unor expresii algebrice.

Vectori

Direcția unei drepte. Segmente cu aceeași direcție. Segmente orientate. Segmente echipolente. Noțiunea de vector. Vector nul. Vector unitate. Vectori egali. Vectori opuși.

Adunarea vectorilor

Adunarea vectorilor: regula paralelogramului, regula triunghiului, regula poligonului. Proprietățile operației de adunare a vectorilor.

Înmulțirea vectorilor cu scalari

Înmulțirea unui vector cu un scalar. Proprietăți ale înmulțirii vectorilor cu scalari.

Descompunerea unui vector într-un reper cartezian

Noțiunea de versor. Descompunerea unui vector după doi vectori dați. Coordonatele unui vector. Înmulțirea unui vector cu un scalar. Suma vectorilor. Coliniaritatea vectorilor. Vectori egali. Formula de calcul pentru lungimea unui vector exprimat cu ajutorul versorilor. Modulul unui vector. Expresia analitică a unui vector.

Vectori în reper cartezian

Vectori exprimați cu ajutorul versorilor: coordonatele unui vector, modulul unui vector.

Vectori coliniari

Vectori coliniari, condiția de coliniaritate a doi vectori.

Echilibre acido-bazice. Tăria acizilor. Exponentul de aciditate.

Protonul și ionul de hidrogen. Ionul hidroniu și ionul hidroxil. Teoria protolitică Brønsted-Lowry. Cuplu acid-bază conjugată. Echilibru acido-bazic. Constanta de aciditate. Disocierea în apă a acizilor tari. Disocierea în apă a acizilor slabi. Exemple de acizi tari. Exemple de acizi slabi. 

Tăria bazelor. Constanta de bazicitate și exponentul de bazicitate.

Disocierea bazelor tari în apă. Disocierea bazelor slabe în apă. Exemple de baze tari și baze slabe. Constanta de bazicitate. Exponentul de bazicitate. Apa - substanță amfoteră (amfolit acido-bazic). Produsul ionic al apei. 

pH-ul soluțiilor apoase de acizi

Definiție pH. Produsul ionic al apei. pH și pOH. Calculul concentrației ionilor hidroniu pentru soluțiile de acizi tari și pentru soluțiile de acizi slabi. Calculul pH-ului pentru soluțiile de acizi tari și pentru soluțiile de acizi slabi. Exemplu de calcul pH pentru o soluție de acid tare. Exemplu de calcul pH pentru o soluție de acid slab. 

pH-ul soluțiilor apoase de baze

Calculul concentrației ionilor hidroxil din soluțiile de baze tari și din soluțiile de baze slabe. Calculul concentrației ionilor hidroniu din soluțiile de baze tari și din soluțiile de baze slabe. Calculul pH-ului soluțiilor de baze tari și al soluțiilor de baze slabe. Exemplu de calcul pH pentru o soluție de bază tare. Exemplu de calcul pH pentru o soluție de bază slabă (o soluție de amoniac). 

Hidroliza sărurilor

Sărurile - compuși ionici. Comportamentul anionilor în apă. Comportamentul cationilor în apă. Reacția de hidroliză. Săruri care formează soluții neutre (săruri provenite de la acizi tari și baze tari). Săruri care formează soluții acide (săruri provenite de la acizi tari și baze slabe). Săruri care formează soluții bazice (săruri provenite de la acizi slabi și baze tari). Săruri provenite de la acizi slabi și baze slabe. Hidroliza azotatului de sodiu (NaNO3), hidroliza clorurii de amoniu (NH4Cl), hidroliza sulfurii acide de sodiu (NaHS), hidroliza cianurii de amoniu (NH4CN). Aplicații; calculul pH-ului unei soluții de sare. 

Șiruri

Șiruri, notații, moduri de a defini un șir. Șir definit descriptiv, șir definit printr-o regulă de calcul, șir definit printr-o relație de recurență. Termenii unui șir. Rangul unui termen. Exemple de șiruri.

Progresii aritmetice- noțiuni introductive

Noțiunea de progresie aritmetică, rația progresiei, proprietățile progresiei aritmetice. Exemple de progresii aritmetice. 

Proprietățile progresiei aritmetice

Termenul general al unei progresii aritmetice în funcție de primul termen și de rație. Proprietățile progresiei aritmetice. Condiția ca n numere sa fie în progresie aritmetică. Suma primilor n termeni ai unei progresii aritmetice. 

Funcția de gradul I

Funcția de gradul întâi. Graficul funcției de gradul I, intersecția cu axele. Monotonia unei funcții de gradul I. Reprezentarea grafică a funcției de gradul I, funcții definite pe ramuri.

Măsurarea unghiurilor

Măsurarea unghiurilor în grade sexagesimale și radiani. Transformarea gradelor în radiani. Tranformarea radianilor în grade.

Cercul trigonometric

Cerc trigonometric (cerc unitate). Exprimarea unghiurilor uzuale în grade și radiani și scrierea coordonatelor punctelor de pe cerc corespunzătoare.

Operații cu numere complexe scrise sub formă algebrică

Adunarea numerelor complexe. Scăderea numerelor complexe. Modulul unui număr complex. Conjugatul unui număr complex. Înmulțirea numerelor complexe. Raportul a două numere complexe. Egalitatea a două numere complexe.

Funcția cosinus

Funcția cosinus. Proprietăți: semnul funcției cosinus, periodicitate, paritate, monotonie. Graficul funcției cosinus.

Funcția tangentă

Funcția tangentă. Proprietăți: semnul funcției tangentă, periodicitate, paritate, monotonie. Graficul funcției tangentă.

Funcția cotangentă

Funcția cotangentă. Proprietăți: semnul funcției cotangentă, periodicitate, paritate, monotonie. Graficul funcției cotangentă.

Reducerea la primul cadran

Calculul funcțiilor trigonometrice folosind formule de reducere la primul cadran. Trecerea din cadranul II în cadranul I. Trecerea din cadranul III în cadranul I. Trecerea din cadranul IV în cadranul I.

Teorema medianei

Aplicații ale produsului scalar: teorema medianei.

Rezolvarea triunghiurilor oarecare

Rezolvarea triunghiurilor oarecare (folosind teorema cosinusului, teorema sinusurilor).

Funcția sinus

Funcția sinus. Proprietăți: semnul funcției sinus, periodicitate, paritate, monotonie. Graficul funcției sinus.

Operații cu permutări

Compunerea permutărilor de grad n.Proprietăți ale compunerii permutărilor de grad n. puterea unei permutări de grad n.Proprietăți ale transpozițiilor.

Noțiunea de permutare

Noțiunea de permutare, noțiunea de permutare de grad n, exemple, permutări de grad n particulare

Înmulțirea numerelor complexe scrise sub formă trigonometrică

Operații cu numere complexe exprimate trigonometric: înmulțirea numerelor complexe. Modulul produsului. Argumentul produsului.

Ridicarea la putere a numerelor complexe sub formă trigonometrică

Operații cu numere complexe exprimate trigonometric: ridicarea la putere a unui număr complex. Formula lui Moivre. Modulul puterii. Argumentul puterii.

Împărțirea numerelor complexe sub formă trigonometrică

Operații cu numere complexe exprimate trigonometric: împărțirea numerelor complexe. Modulul câtului. Argumentul câtului.

Proprietăți ale funcțiilor: injectivitate

Funcții injective, noțiunea de funcție injectivă. Modalități de a studia injectivitatea unei funcții. 

Proprietăți ale funcțiilor: surjectivitate

Funcții surjective, noțiunea de funcție surjectivă. Modalități de a studia surjectivitatea unei funcții.

Funcții inversabile

Funcții inverse. Inversa unei funcții. Condiția necesară și suficientă ca o funcție să fie inversabilă.

Funcția putere cu exponent natural

Funcția putere cu exponent natural și proprietățile acesteia: paritate, monotonie, semnul funcției. Graficul funcției putere cu exponent natural.

Funcția radical de ordin n

Funcția radical de ordin n și proprietățile acesteia. Graficul funcției radical de ordin n.

Funcția exponențială

Noțiunea de creștere exponențială, descreștere exponențială. Funcția exponențială și proprietățile acesteia. Grafice de funcții exponențiale.

Funcția logaritmică

Funcția logaritmică și proprietățile acesteia. Graficul funcției logaritmice.

Funcția arcsinus

Funcția arcsinus: definiție, grafic, proprietăți, exemple.

Funcția arccosinus

Funcția arccosinus: definiție, grafic, proprietăți, exemple.

Funcția arctangentă

Funcția arctangentă: definiție, grafic, proprietăți, exemple.

Funcția arccotangentă

Funcția arccotangentă: definiție, grafic, proprietăți, exemple.

Permutări

Noțiunea de permutare. Numărul permutărilor de grad n. Simbolul n! (n factorial). Exerciții cu permutări.

Aranjamente

Numărul de aranjamente de n elemente luate câte k. Exerciții cu aranjamente.

Combinări

Combinări. Numărul de combinări de n elemente luate câte k. Exerciții cu combinări.

Proprietăți ale combinărilor

Proprietăți ale combinărilor: formula combinărilor complementare, formula de recurență în calculul cu combinări. Numărul tuturor submulțimilor unei mulțimi cu n elemente. Calculul unor sume folosind proprietățile combinărilor.

Binomul lui Newton

Binomul lui Newton. Formula de calcul pentru suma (a+b)^{n}. Formula termenului general din dezvoltarea binomială. 

Mulţimi mărginite

Noţiunile de minorant şi majorant al unei mulţimi. Mulţimi mărginite. Axioma lui Cantor. 

Mulţimi nemărginite

Marginile  unei mulţimi nemărginite. Dreapta reală încheiată. Operaţiile aritmetice în \overline{\mathbb{R}}.

Vecinătăţile unui punct pe axa reală

Noţiunea de vecinătate a unui număr real. Punct de acumulare al unei mulţimi, punct izolat.

Şiruri convergente

Limita unui şir, definiţia cu vecinătăţi a limitei unui şir. Şir convergent. Şiruri care au limită. Şir divergent.

Criteriul de convergenţă cu epsilon

Criteriul de existenţă a limitei unui şir cu epsilon. Teorema de convergenţă cu epsilon în cazul limitei finite. Criteriul cu epsilon pentru limită infinită. 

Operaţii cu şiruri convergente

Operaţii cu şiruri convergente: limita sumei a două şiruri convergente, limita produsului, limita câtului, limita unei puteri.

Criterii de existenţă a limitei unui şir: criteriul majorării

Criteriul majorării pentru şiruri convergente. Criteriul majorării pentru şiruri divergente.

Criterii de existenţă a limitei unui şir: criteriul cleştelui

Trecerea la limită în inegalitaţi. Criteriul cleştelui.

Proprietăţi ale şirurilor convergente la zero

Şiruri convergente la zero, proprietăţi. Operaţii cu şiruri convergente la zero.

Limite remarcabile

Şiruri cu limita numărul e. Limite remarcabile. 

Teorema Stolz-Cesaro

Metode de calcul a unor limite de şiruri: lema Stolz-Cesaro.

Limite laterale

Limitele la stânga şi la dreapta ale unei funcţii într-un punct. Limite laterale. Criteriul de existenţă a limitei unei funcţii într-un punct folosind limitele laterale.

Criterii de existenţă a limitei unei funcţii: criteriul majorării

Criterii de existenţă a limitei unei funcţii într-un punct: criteriul majorării pentru limite finite şi criteriul majorării pentru limite infinite.

Trecerea la limită în inegalităţi. Criteriul cleştelui (pentru limite de funcţii)

Trecerea la limită în inegalităţi. Criteriul cleştelui (pentru limite de funcţii)

Limitele unor funcţii elementare

Limita funcţiei raţionale în caz de nedeterminare 0/0.

Limitele funcţiilor elementare

Limita funcției raționale. Limita funcţiei radical. Limita funcţiei exponenţiale. Limita funcţiei logaritmice.

Limitele funcţiilor trigonometrice directe

Limitele funcţiilor trigonometrice directe: sinus, cosinus, tangentă, cotangentă.

Limitele funcţiilor trigonometrice inverse

Limitele funcţiilor trigonometrice inverse: arcsinus, arccosinus, arctangentă, arccotangentă.

Operaţii cu limite de funcţii

Operaţii cu limite de funcţii: adunarea, înmulţirea, câtul, ridicarea la putere.

Funcţie continuă într-un punct

Definiţia unei funcţii continue într-un punct. Punct de continuitate. Puncte de discontinuitate.

Continuitatea laterală

Funcţie continuă la stânga într-un punct, funcţie continuă la dreapta. 

Puncte de discontinuitate

Punct de discontinuitate de prima speţă, punct de discontinuitate de a doua speţă. 

Operaţii cu funcţii continue

Suma, produsul, câtul a două funcţii continue. Puteri de funcţii continue.

Proprietăţi ale funcţiilor continue pe un interval: proprietatea lui Darboux

Funcţii cu proprietatea lui Darboux. Proprietăţi ale funcţiilor continue pe un interval. Teorema Cauchy-Weierstrass-Bolzano.

Funcţii continue pe un interval: existenţa soluţiilor unei ecuaţii

Proprietăţi ale funcţiilor continue pe un interval: existenţa soluţiilor unei ecuaţii.

Funcţii continue pe un interval: stabilirea semnului

Stabilirea semnului unei funcţii continue pe un interval.

Mărginirea funcţiilor continue pe un interval închis

Proprietăţi de mărginire ale funcţiilor continue pe un interval închis. Teorema lui Weierstrass.

Derivata unei funcţii într-un punct

Noţiunea de derivată a unei funcţii într-un punct. Definiţia derivatei. Funcţii derivabile.

Derivate laterale

Derivata la stânga şi derivata la dreapta a unei funcţii într-un punct. Existenţa derivatei unei funcţii într-un punct folosind derivatele laterale.

Puncte remarcabile ale graficului unei funcţii: puncte de întoarcere

Puncte remarcabile pentru graficul unei funcţii: puncte de întoarcere.

Puncte remarcabile ale graficului unei funcţii: puncte unghiulare

Puncte remarcabile pentru graficul unei funcţii: puncte unghiulare.

Puncte remarcabile ale graficului unei funcţii: puncte de inflexiune

Puncte remarcabile pentru graficul unei funcţii: puncte de inflexiune.

Derivatele unor funcţii elementare

Derivatele unor funcţii elementare: funcţia constantă, funcţia putere, funcţia radical de ordin n, funcţia logaritmică, funcţia exponenţială.  

Operaţii cu funcţii derivabile (1)

Operaţii cu funcţii derivabile. Derivata sumei, derivata produsului, derivata câtului a două funcţii. 

Operaţii cu funcţii derivabile (2)

Operaţii cu funcţii derivabile. Derivarea funcţiilor compuse.

Operaţii cu funcţii derivabile (3)

Operaţii cu funcţii derivabile. Derivarea funcţiei inverse.

Derivatele funcţiilor trigonometrice inverse

Derivatele funcţiilor trigonometrice inverse: funcţia arcsinus, arccosinus, arctangentă, arccotangentă.

Derivate de ordin superior

Derivate de ordin superior: derivata de ordinul II. Definiţia derivatei a doua.

Puncte de extrem ale unei funcţii

Puncte de extrem ale unei funcţii: punct de maxim local, punct de minim local, punct de maxim absolut, punct de minim absolut.

Consecinţe ale teoremei lui Lagrange

Consecinţe ale teoremei lui Lagrange. Funcţii cu derivata nulă. Funcţii cu derivate egale.

Regulile lui l'Hospital

Regulile lui l'Hospital. Rezolvarea unor cazuri de nedeterminare în calculul limitelor de funcţii cu ajutorul derivatelor.

Rolul derivatei întâi în studiul funcţiilor

Rolul derivatei întâi în studiul funcţiilor. Determinarea intervalelor de monotonie ale unei funcţii. Determinarea punctelor de extrem.

Rolul derivatei a doua în studiul funcţiilor

Rolul derivatei a doua în studiul funcţiilor. Determinarea intervalelor de convexitate şi concavitate. Determinarea punctelor de inflexiune.

Asimptote orizontale

Noţiunea de asimptotă orizontală.

Asimptote oblice

Noţiunea de asimptotă oblică.

Asimptote verticale

Noţiunea de asimptotă verticală.

Primitive. Integrala nedefinită a unei funcţii

Noţiunea de funcţie primitivă. Primitivele unei funcţii. Integrala nedefinită a unei funcţii.

Primitive uzuale

Tabelul integralelor nedefinite deduse din derivatele funcţiilor elementare.

Metoda integrării prin părţi

Metode de calcul ale primitivelor: formula de integrare prin părţi.

Diviziuni ale unui interval. Sume Riemann

Definirea noţiunilor de: diviziune a unui interval [a,b], norma unei diviziuni, suma Riemann.

Integrala definită

Definiţia integrabilităţii unei funcţii pe un interval [a,b]. Noţiunea de funcţie integrabilă Riemann. Integrala definită.

Integrabilitatea funcţiilor continue

Integrabilitatea funcţiilor continue. Condiţii ca o funcţie să fie integrabilă.Teorema lui Lebesgue.

Formula lui Leibniz-Newton

Metode de calcul pentru integrala definită. Formula lui Leibniz-Newton.

Proprietăţi ale integralei definite

Proprietăţi ale integralei definite: proprietatea de liniaritate, proprietatea de aditivitate la interval, pozitivitatea integralei, monotonia integralei, inegalitatea mediei, modulul integralei.

Metoda integrării prin părţi

Metode de calcul pentru integrale definite, metoda integrării prin părţi.

Integrarea prin schimbare de variabilă (1)

Metode de calcul pentru integrale definite: metoda integrării prin substituţie. Prima metodă de schimbare de variabilă.

Integrarea prin schimbare de variabilă (2)

Metode de calcul pentru integrale definite: metoda integrării prin substituţie. A doua metodă de schimbare de variabilă.

Teorema de medie

Teorema de medie, interpretare geometrică.

Aria unei suprafeţe plane

Aria unui subgrafic. Aria suprafeţelor plane cuprinse între două curbe.

Parte stabilă

Noţiunea de parte stabilă.

Proprietăţi ale legilor de compoziţie (1)

Proprietăţi ale legilor de compoziţie: proprietatea de comutativitate şi proprietatea de asociativitate.

Monoizi

Noţiunea de monoid, monoid comutativ.

Grupuri

Definiţia grupului. Grup abelian. Exemple de grupuri. Grup finit. Ordinul unui grup.

Reguli de calcul într-un grup

Reguli de calcul într-un grup: puterea unui element, legi de simplificare.

Morfisme de grupuri

Morfism de grupuri. Izomorfism de grupuri. Grupuri izomorfe. Endomorfism al unui grup. Automorfism al unui grup.

Subgrupuri

Definiţia noţiunii de subgrup.

Inele

Noţiunea de inel. Inel comutativ. Exemple de inele.

Reguli de calcul într-un inel

Divizori ai lui zero într-un inel. Noţiunea de inel integru (domeniu de integritate). Regula semnelor într-un inel. Legi de simplificare.

Morfisme de inele

Morfism de inele. Izomorfism. Inele izomorfe.

Corpuri

Noţiunea de corp. Corp comutativ. Exemple de corpuri.

Morfisme de corpuri

Morfism de corpuri, izomorfism de corpuri.

Şiruri de elemente din corpul K

Şir de elemente dintr-un corp. Operaţii cu şiruri de elemente din corpul K. Noţiunea de polinom cu coeficienţi în corpul K.

Forma algebrică a polinoamelor

Forma algebrică a unui monom. Forma algebrică a unui polinom.

Funcţii polinomiale

Funcţie polinomială ataşată unui polinom. Valoarea unui polinom. 

Operaţii cu polinoame (1)

Adunarea polinoamelor scrise sub formă algebrică.

Operaţii cu polinoame (2)

Înmulţirea polinoamelor scrise sub formă algebrică.

Operaţii cu polinoame (3)

Împărţirea polinoamelor scrise sub formă algebrică. Teorema împărţirii cu rest.

Divizibilitatea polinoamelor

Divizibilitatea polinoamelor. Proprietăţile relaţiei de divizibilitate. Polinoame asociate în divizibilitate.

Rădăcini ale polinoamelor. Teorema lui Bezout

Rădăcini ale polinoamelor. Teorema lui Bezout. Rădăcini multiple ale unui polinom. Ordin de multiplicitate al rădăcinilor.

Descompunerea polinoamelor în factori ireductibili

Polinoame ireductibilie. Descompunerea polinoamelor în factori ireductibili.

Relaţiile lui Viete

Relaţiile lui Viete pentru polinoame de grad n.

Distanţa între două puncte

Distanţa dintre două puncte în plan când se cunosc coordonatele celor două puncte. Lungimea unui segment. Coordonatele mijlocului unui segment.

Distanţa de la un punct la o dreaptă

Formula distanţei de la un punct la o dreaptă.

Aria triunghiului exprimată cu ajutorul coordonatelor vârfurilor sale

Formula ariei triunghiului când se cunosc coordonatele vârfurilor.

Procente

Procente, raport procentual, determinarea procentului dintr-un număr.

Dobânda simplă

Formula de calcul pentru dobănda simplă.

Dobânda compusă

Dobânda compusă. Suma obţinută după o perioadă folosind dobânda compusă.

Taxa pe valoarea adăugată

Taxa pe valoarea adăugată. TVA.

TVA

Noţiuni de statistică matematică

Noţiuni de statistică matematică: populaţie statistică, noţiunea de caracteristică a unei populaţii, frecvenţa absolută, frecvenţa relativă, frecvenţa cumulată.

Elemente caracteristice ale unei serii statistice

Interpretarea datelor statistice: media, mediana, modulul, dispersia, abaterea medie pătratică.

Evenimente

Evenimente. Operaţii cu evenimente.

Probabilitatea unui eveniment.

Probabilitatea unui eveniment. Funcţia probabilitate.

Proprietăţi ale probabilităţilor

Operaţii cu probabilităţi. Proprietăţi ale  probabilităţilor.

Probabilităţi condiţionate

Probabilităţi condiţionate. Probabilitatea evenimentului A condiţionată de evenimentul B.

Evenimente dependente şi independente

Evenimente dependente şi independente.

Schema lui Poisson

Scheme clasice de probabilitate. Schema lui Poisson (sau schema binomială generalizată).

Schema lui Bernoulli

Scheme clasice de probabilitate. Schema lui Bernoulli (sau schema binomială).

Variabile aleatoare

Variabile aleatoare: tabelul de distribuţie, media, modulul, dispersia şi amplitudinea unei variabile aleatoare.

Introducere în HTML

HTML este limbajul marcant standard pentru crearea de pagini Web.
HTML reprezintă un început pentru realizarea site-urilor profesionale.
Declarația <! DOCTYPE html> definește acest document ca fiind HTML5.
Elementul <html> este elementul rădăcină al unei pagini HTML.
Elementul <head> conține meta informații despre document.
Elementul <titlu> specifică un titlu pentru document.
Elementul <body> conține conținutul paginii vizibile.
Elementul <h1> definește o rubrică mare.
Elementul <p> definește un alineat.

Elemente de bază HTML

Toate documentele HTML trebuie să înceapă cu o declarație de tip document: <! DOCTYPE html>.
Tag-urile utilizate sunt: <html> și </html>, <body> și </body>, <h1> la <h6>, 
<p> și </p>, <a> și </a>, <img>, <ul> și </ul>, <button> și </button>
 

Atribute HTML

Atributele oferă informații suplimentare despre elementele HTML.
Adresa de legătură este specificată în atributul href.
Numele de fișier al sursei imaginii este specificat în atributul src.
Atributele width și height, care specifică lățimea și înălțimea imaginii.
Atributul alt specifică un text alternativ care trebuie utilizat, dacă nu poate fi afișată o imagine.
Atributul style este utilizat pentru a specifica stilul unui element.
Limbajul este declarat cu atributul lang.
Atributul title este adaugat la elementul <p>.

Comentarii în codul HTML

Etichetele de comentarii sunt utilizate pentru a insera comentarii în codul sursă HTML.
Comentariile nu sunt afișate de browser, dar vă pot ajuta să vă documentați codul sursă HTML.Cu ajutorul comentariilor puteți plasa notificări și memento-uri în HTML.
Comentariile sunt de asemenea foarte bune pentru depanarea HTML, deoarece puteți comenta câteodată liniile de cod HTML pentru a căuta erori:

Culori în HTML

Culorile în codul HTML sunt specificate folosind nume de culori predefinite sau valorile: RGB, HEX, HSL, RGBA, HSLA.
În HTML, o culoare poate fi specificată folosind un nume de culoare.
Puteți seta culoarea de fundal (Background Color) pentru elementele HTML folosind background-color.
Puteți seta culoarea textului folosind color.
Puteți seta culoarea marginilor folosind border.
Saturația poate fi descrisă ca intensitatea unei culori.
Luminozitatea unei culori poate fi descrisă cam cât de multă lumină doriți să dați culorii.
Valorile de culoare RGBA sunt o extensie a valorilor de culoare RGB cu un canal alfa - care specifică opacitatea unei culori.
Valorile de culoare HSLA sunt o extensie a valorilor de culoare HSL cu un canal alfa - care specifică opacitatea unei culori.

Stiluri CSS în HTML

Modelarea HTML cu CSS.
CSS descrie modul în care elementele HTML trebuie să fie afișate pe ecran, pe hârtie sau în alte suporturi. Poate controla aspectul mai multor pagini web simultan.
Utilizați atributul HTML style pentru stilul CSS în linie (inline).
Utilizați elementul HTML <style> pentru a defini stilul CSS intern.
Utilizați elementul HTML <link> pentru a vă referi la un fișier CSS extern.
Utilizați elementul HTML <head> pentru a stoca elementele <style> și <link>.
Utilizați proprietatea CSS color pentru culorile de text.
Utilizați proprietatea CSS font-family pentru fonturile text.
Utilizați proprietatea CSS font-size pentru dimensiunile textului.
Utilizați proprietatea CSS border pentru margini.
Utilizați proprietatea CSS padding pentru spațiu în interiorul border.
Utilizați proprietatea CSS margin pentru spațiu în afara border.
Pentru a defini un stil specific pentru un element special, adăugați un atribut id elementului:
Pentru a defini un stil pentru tipuri speciale de elemente, adăugați un atribut de clasă elementului:
Foile de stil externe (external style sheets ) pot fi trimise cu o adresă URL completă sau cu o cale relativă la pagina web curentă.

Linkuri HTML

Linkurile se găsesc în aproape toate paginile web. Link-urile permit utilizatorilor să facă click pe drumul lor de la pagină la pagină.
Link-urile HTML sunt hyperlink-uri.
Utilizați elementul <a> pentru a defini un link.
Utilizați atributul href pentru a defini adresa link-ului.
Utilizați atributul țintă (target) pentru a defini unde să deschideți documentul legat.
Utilizați elementul <img> (în interiorul <a>) pentru a utiliza o imagine ca link.
Utilizați atributul id (id = "valoare") pentru a defini marcajele (bookmarks) dintr-o pagină
Atributul title specifică informații suplimentare despre un element.
Utilizați atributul href (href = "# valoare") pentru a face legătura cu marcajul (bookmark).
Marcajele HTML (bookmarks) sunt utilizate pentru a permite cititorilor să sară la anumite părți ale unei pagini Web.
Paginile externe pot fi referite cu o adresă URL completă sau cu o cale relativă la pagina web curentă.

Imagini în HTML

Imaginile pot îmbunătăți designul și aspectul unei pagini web.
Utilizați elementul HTML <img> pentru a defini o imagine.
Utilizați atributul HTML src pentru a defini adresa URL a imaginii.
Utilizați atributul HTML alt pentru a defini un text alternativ pentru o imagine, dacă nu poate fi afișat.
Utilizați atributele HTML lățime și înălțime (width and height) pentru a defini dimensiunea imaginii.
Utilizați proprietățile CSS pentru lățime și înălțime (width and height) pentru a defini dimensiunea imaginii (alternativ).
Utilizați proprietatea CSS float pentru a lăsa imaginea să plutească.
Utilizați elementul HTML <map> pentru a defini o imagine-hartă (image-map).
Utilizați elementul HTML <area> pentru a defini zonele în care se poate face click pe imaginea hartă (image-map).
Utilizați atributul usemap al elementului HTML <img> pentru a indica o hartă-imagine(image-map).
Utilizați elementul HTML <picture> pentru a afișa imagini diferite pentru diferite dispozitive.

Imagini hărți în HTML

Cu hărți de imagine (Image Maps), puteți adăuga zone pe care se poate face click pe o imagine.
Eticheta <map> definește o imagine-hartă
Imaginea este introdusă folosind eticheta <img>.Singura diferență față de alte imagini este că trebuie să adăugați un atribut usemap.
Elementul <map> este utilizat pentru a crea o hartă a imaginii și este legat de imagine prin utilizarea atributului nume.
O zonă pe care se poate face click este definită folosind un element <area>.
 

Imagini de fundal în HTML

O imagine de fundal poate fi specificată pe aproape orice element HTML.
Pentru a adăuga o imagine de fundal în HTML, folosiți imaginea de fundal (background-image) a proprietății CSS.
Pentru a adăuga o imagine de fundal (background-image) la un element HTML, puteți utiliza atributul style.
Dacă doriți ca întreaga pagină să aibă o imagine de fundal (background-image), atunci trebuie să specificați imaginea de fundal (background-image) în elementul <body>.
Dacă imaginea de fundal este mai mică decât elementul, imaginea se va repeta, orizontal și vertical, până când va ajunge la sfârșitul elementului.
Pentru a evita ca imaginea de fundal (background-image)să se repete, utilizați proprietatea background-repeat.
Dacă doriți ca imaginea de fundal să acopere întregul element, puteți seta proprietatea de fundal (background-size) pe care să o acopere.
De asemenea, pentru a vă asigura că întregul element este întotdeauna acoperit, setați proprietatea de atașare în fundal la fix (background-attachment).
Dacă doriți ca întinderea imaginii de fundal să se potrivească întregii imagini din element, puteți seta proprietatea de fundal (background-size) la 100% 100%:

Element de imagine în HTML

Elementul de imagine ne permite să afișăm imagini diferite pentru diferite dispozitive sau dimensiuni de ecran.
Elementul HTML <picture>.
Elementul <picture> conține o serie de elemente <source>.
Elementul <img> este folosit de browserele care nu acceptă elementul <picture> sau dacă niciuna dintre etichetele <source> nu se potrivește.
Există două scopuri principale pentru elementul <picture>: Lățime de bandă (Bandwidth), Formatați suportul (Format Support).

Elementele HTML Block și Inline

Fiecare element HTML are o valoare de afișare implicită în funcție de tipul de element.Cele două valori afișate sunt: block și inlinie.
Un element la nivel de block (block-level element) pornește întotdeauna pe o linie nouă și ocupă toată lățimea disponibilă (se întinde spre stânga și spre dreapta, cât poate).
Elementul <div> este un element la nivel de block.
Un element inline nu pornește de pe o linie nouă ci ocupă doar lățimea necesară.
Acesta este un element inline <span> din interiorul unui paragraf.
Elementul <div> este adesea folosit ca și container pentru alte elemente HTML.
Elementul <div> nu are atribute necesare, dar stilul (style), clasa (class) și id-ul (id) sunt comune.
Când este utilizat împreună cu CSS, elementul <div> poate fi utilizat pentru a aplica stiluri blocurilor de conținut.
Elementul <span> este adesea folosit ca un container pentru un text.
Elementul <span> nu are atribute necesare, stilul (style), clasa (class) și id-ul (id) sunt comune.
Când este utilizat împreună cu CSS, elementul <span> poate fi utilizat pentru a aplica stiluri blocurilor de conținut.

Atributul HTML class

Atributul HTML class este folosit pentru a defini stiluri egale pentru elemente cu același nume de clasă.
Atributul HTML class poate fi folosit și pe elementele inline.
În CSS, pentru a selecta elemente cu o anumită clasă, scrieți un caracter (.), urmat de numele clasei.
Atributul class poate fi folosit pe orice element HTML.
Numele clasei este sensibil la litere mari și mici!
Elementele HTML pot avea mai mult de un nume de clasă, fiecare nume de clasă trebuie separat printr-un spațiu.
Etichetele diferite pot împărtăși aceeași clasă.
Etichetele diferite, cum ar fi <h2> și <p>, pot avea același nume de clasă și, prin urmare, au același stil.
Utilizarea atributului class în JavaScript.
JavaScript poate accesa elemente cu un nume de clasă specificat folosind metoda getElementsByClassName ().

Atributul HTML id

Atributul id specifică un id unic pentru un element HTML (valoarea trebuie să fie unică în documentul HTML).
Valoarea id poate fi folosită de CSS și JavaScript pentru a efectua anumite sarcini pentru elementul cu valoarea specifică de id.
În CSS, pentru a selecta un element cu un id specific, scrieți un caracter hash (#), urmat de id-ul elementului.
Valoarea id este sensibilă la litere mari și mici.
Atributul id poate fi utilizat pe orice element HTML.
Un element HTML poate avea un singur id unic care aparține acelui element singular, în timp ce un nume de clasă poate fi utilizat de mai multe elemente.
Marcajele (bookmarks) HTML sunt utilizate pentru a permite cititorilor să sară la anumite părți ale unei pagini Web.
Marcajele (bookmarks) pot fi utile dacă pagina dvs. web este foarte lungă.
Utilizarea atributului id în JavaScript.
JavaScript poate accesa un element cu un id specificat folosind metoda getElementById ().

Căi de fișiere în HTML

O cale de fișier descrie locația unui fișier în structura folderului unui site web.
Căile de fișiere sunt utilizate la conectarea la fișiere externe, cum ar fi: Pagini web, Imagini, Foi de stil, JavaScripts.
O cale absolută a fișierului este adresa URL completă a unui fișier internet.
O cale de fișier relativă indică un fișier relativ la pagina curentă.

Elementul HTML head

Elementul <head> este un container pentru metadate (date despre date) și este plasat între eticheta <html> și eticheta <body>.
<head> Definește informații despre document.
<titlu> Defineste titlul unui document.
<base> Definește o adresă implicită sau o țintă implicită pentru toate linkurile dintr-o pagină.
<link> Definește relația dintre un document și o resursă externă.
<meta> Definește metadatele despre un document HTML.
<script> Definește un script din partea clientului.
<style> Definește informațiile despre stil pentru un document.
HTML5 a introdus o metodă pentru a permite proiectanților web să preia controlul asupra viewport-ului, prin eticheta <meta>.
Viewport este zona vizibilă a utilizatorului unei pagini web. Aceasta variază în funcție de dispozitiv și va fi mai mică pe un telefon mobil decât pe ecranul computerului.
Ar trebui să includeți următorul element viewport <meta> în toate paginile web.
Partea width=device-width stabilește lățimea paginii pentru a urma lățimea ecranului dispozitivului (care va varia în funcție de dispozitiv).
Partea initial-scale=1.0  setează nivelul inițial de zoom când prima pagină este încărcată de browser. 

Elemente HTML Layout

Site-urile web deseori afișează conținut în mai multe coloane (cum ar fi o revistă sau un ziar).
<header> - definește un antet pentru un document sau o secțiune
<nav> - definește un container pentru link-uri de navigație
<section> - definește o secțiune dintr-un document
<article> - definește un articol independent de sine stătător
<aside> - definește conținutul în afară de conținut (precum o bară laterală)
<footer> - definește un subsol pentru un document sau o secțiune
<detalii> - definește detalii suplimentare
<summary> - definește un titlu pentru elementul <details>
Tehnici Layout HTML. Există cinci moduri diferite de a crea multicolumn layouts: HTML tables (not recommended), CSS float property, CSS flexbox, CSS framework, CSS grid.
Elementul <table> nu a fost proiectat pentru a fi un instrument de aspect! Scopul elementului <tabel> este afișarea datelor tabulare. 
Dacă doriți să vă creați rapid un layout, puteți utiliza un framework cum ar fi Bootstrap.
Este ceva comun să faceți machete web (web layouts) întregi folosind proprietatea CSS float. 
Flexbox reprezintă un nou mod de dispunere în CSS3.
Modulul CSS Grid Layout oferă un sistem de dispunere bazat pe grilă, cu rânduri și coloane, ceea ce facilitează proiectarea paginilor web fără a fi nevoie să folosiți floats și poziționare.

HTML Responsive Web Design

Responsive Web Design vizează utilizarea HTML-ului și CSS-ului pentru redimensionarea, ascunderea, micșorarea sau mărirea unui site web automat, pentru a-l arăta bine pe toate dispozitivele (desktop-uri, tablete și telefoane).
Setarea Viewport. Când creați pagini web responsive, adăugați următorul element <meta> în toate paginile dvs. web.
Imaginile responsive sunt imagini care se dimensionează frumos pentru a se potrivi cu orice dimensiune a browserului.
Utilizarea proprietății lățime (width).
Utilizarea proprietății cu lățimea maximă (max-width).
Elementul HTML <picture> vă permite să definiți imagini diferite pentru dimensiuni diferite ale ferestrei browserului.
Responsive Text Size. Mărimea textului poate fi setată cu o unitate „vw”, ceea ce înseamnă „lățimea vizualizării” (viewport width).
Pe lângă redimensionarea textului și a imaginilor, este de asemenea obișnuit să folosești interogări media în paginile responsive web.
Cu interogări media, puteți defini stiluri complet diferite pentru diferite dimensiuni de browser.
O pagină Responsive Web ar trebui să arate bine pe ecrane desktop mari și pe telefoane mobile mici.
Există multe CSS Frameworks care oferă un Responsive Design.
O modalitate excelentă de a crea un Responsive Design este de a utiliza o responsive style sheet.
Un alt framework popular este Bootstrap, folosește HTML, CSS și jQuery pentru a face pagini web responsive.



 

HTML și XHTML

XHTML este HTML scris ca XML.
XHTML înseamnă limbaj de extindere HyperText Markup Language
XHTML este aproape identic cu HTML
XHTML este mai strict decât HTML
XHTML este HTML definit ca o aplicație XML
XHTML este acceptat de toate browserele principale

Formulare HTML

Elementul HTML <form> definește un formular care este utilizat pentru a colecta intrarea utilizatorului.
Elementele de formular sunt diferite tipuri de elemente de intrare, cum ar fi câmpurile de text, casetele de selectare, butoanele radio, butoanele de trimitere și multe altele.
Elementul <input> este cel mai important form element.
Elementul <input> poate fi afișat în mai multe moduri, în funcție de atributul type.
<input type = "text"> Definește un câmp de introducere text dintr-o linie.
<input type = "radio"> Definește un buton radio (pentru selectarea uneia dintre mai multe opțiuni).
<input type = "submit"> Definește un buton de trimitere (pentru trimiterea formularului).
Form-handler este de obicei o pagină de server cu un script pentru procesarea datelor de intrare.
Form-handler este specificat în atributul de acțiune al formularului.
Atributul action definește acțiunea care trebuie executată la trimiterea formularului.
Atributul target specifică dacă rezultatul trimis se va deschide într-o nouă pagină a browser-ului, într-un cadru sau în fereastra curentă.
Valoarea implicită este „_self”, ceea ce înseamnă că formularul va fi transmis în fereastra curentă.
Pentru a face ca rezultatul formularului să fie deschis într-o nouă pagină a browser-ului, folosiți valoarea „_blank”.
Atributul method specifică metoda HTTP (GET sau POST) care trebuie utilizată la trimiterea datelor formularului.
Trimiterea datelor formularului se face cu metoda implicită GET.
Utilizați întotdeauna POST dacă datele din formular conțin informații personale sau sensibile. Metoda POST nu afișează datele formularului trimis în câmpul adresei paginii.
Elementul <fieldset> este utilizat pentru a grupa datele înrudite într-un formular.
Elementul <legend> definește o legendă pentru elementul <fieldset>.

Elemente de formulare HTML

<form> Definește un formular HTML pentru introducerea utilizatorului.
Cel mai important element de formă este elementul <input>.
Elementul <input> poate fi afișat în mai multe moduri, în funcție de atributul type.
Dacă atributul type este omis, câmpul de intrare primește tipul implicit: "text".
Elementul <select> definește o listă derulantă (drop-down list).
Elementul  <option> definește o opțiune care poate fi selectată.
Utilizați atributul size pentru a specifica numărul de valori vizibile.
Utilizați atributul multiple pentru a permite utilizatorului să selecteze mai multe valori.
Elementul <textarea> definește un câmp de introducere pe mai multe linii (o zonă de text).
Atributul rows specifică numărul vizibil de linii dintr-o zonă de text.
Atributul cols specifică lățimea vizibilă a unei zone de text.
Elementul <button> definește un buton pe care se poate face click.
Elementul <datalist> specifică o listă de opțiuni predefinite pentru un element <input>.
Utilizatorii vor vedea o listă derulantă (drop-down list) a opțiunilor predefinite pe măsură ce introduc date.
Atributul listei elementului <input>, trebuie să se refere la atributul id al elementului <datalist>.
Elementul <output> reprezintă rezultatul unui calcul (ca unul realizat de un script).
<form> Definește un formular HTML pentru introducerea utilizatorului
<input> Definește un control de intrare
<textarea> Definește un control de intrare multilin (zona text)
<label> Definește o etichetă pentru un element <input>
<fieldset> Grupează elemente conexe într-o formă
<legend> Definește o legendă pentru un element <fieldset>
<select> Definește o listă derulantă
<optgroup> Definește un grup de opțiuni conexe dintr-o listă derulantă
<option> Definește o opțiune dintr-o listă derulantă
<button> Definește un buton pe care se poate face clic
<datalist> Specifică o listă de opțiuni predefinite pentru controale de intrare
<output> Definește rezultatul unui calcul

HTML Atribute Input

Atributul value specifică valoarea inițială pentru un câmp de intrare.
Atributul readonly specifică faptul că un câmp de intrare este doar citit (nu poate fi modificat).
Atributul disabled specifică faptul că un câmp de intrare este dezactivat.
Atributul size specifică dimensiunea (în caractere) pentru câmpul de intrare.
Atributul maxlength specifică lungimea maximă permisă pentru câmpul de intrare.
Restricțiile de intrare nu sunt ignorate, iar JavaScript oferă multe modalități de a adăuga input-uri ilegale.
HTML5 a adăugat următoarele atribute pentru <input>: autocomplete, autofocus, form, formaction, formenctype, formmethod,
formnovalidate, formtarget, height and width, list, min and max, multiple, pattern (regexp), placeholder, required, step
și următoarele atribute pentru <form>: autocomplete, novalidate.
Atributul formaction este utilizat cu type="submit" și type="image".
Atributul formenctype este utilizat cu type = "submit" și type = "image".
Atributul formmethod poate fi utilizat cu type = "submit" și type = "image".
Atributul step funcționează cu următoarele tipuri de intrare (input types): number, range, date, datetime-local, month, time și week.
Atributul pattern funcționează cu următoarele tipuri de intrare (input types): text, search, url, tel, email, și password.
Utilizați atributul global title pentru a descrie pattern-ul care să ajute utilizatorul.
Atributul placeholder funcționează cu următoarele tipuri de intrare (input types): text, search, url, tel, email, și password.
Atributul required funcționează cu următoarele tipuri de intrare (input types): text, search, url, tel, email, password, date pickers, number, checkbox, radio, și file.
Atributul multiple funcționează cu următoarele tipuri de intrare (input types): e-mail și file.
Atributele min și max funcționează cu următoarele tipuri de intrare (input types): number, range, date, datetime-local, month, time și week.
Atributul list se referă la un element <datalist> care conține opțiuni predefinite pentru un element <input>.
Atributele înălțime și lățime (height și width) specifică înălțimea și lățimea unui element <input type = "image">.
Atributul formnovalidate poate fi utilizat cu type="submit".
Atributul formtarget înlocuiește atributul țintă (target) al elementului <form>.
Atributul formtarget poate fi utilizat cu type = "submit" și type = "image".
Atributul novalidate este un atribut <form>.
Atributul autocomplete funcționează cu <form> și următoarele tipuri <input>:text, search, url, tel, email, password, datepickers, range, și color.

Elemente semantice în HTML5

Semantica se referă la studiul sensurilor cuvintelor și frazelor dintr-o limbă.
Elemente semantice = elemente cu semnificație:
<article>, <aside>, <details>, <figcaption>, <figure>, <footer>, <header>, <main>, <mark>, <nav>, <section>, <summary>, <time>.
Exemple de elemente non-semantice<div> și <span> - Nu spune nimic despre conținutul său.
Exemple de elemente semantice<form><tabel> și <article> - definește clar conținutul său.
<article> Definește un articol
<aside> Definește conținutul în afară de conținutul paginii
<detalii> Definește detalii suplimentare pe care utilizatorul le poate vizualiza sau ascunde
<figcaption> Definește o legendă pentru un element <figure>
<figure> Specifică conținut independent, cum ar fi ilustrații, diagrame, fotografii, listări de coduri etc.
<footer> Definește un subsol pentru un document sau secțiune
<header> Specifică un antet pentru un document sau secțiune
<main> Specifică conținutul principal al unui document
<mark> Definește text marcat / evidențiat
<nav> Definește legăturile de navigare
<section> Definește o secțiune dintr-un document
<summary> Definește un titlu vizibil pentru un element <details>
<time> Definește o data / ora

Ghid de stil în HTML5

O utilizare constantă a stilului face mai ușor pentru alții să înțeleagă HTML-ul.
În viitor, programe precum cititorii XML ar putea dori să citească HTML-ul.
Utilizarea unei sintaxe bine formate - „aproape de XHTML” poate fi inteligentă.
Vă recomandăm să folosiți numele elementelor scrise cu litere mici, deoarece:
În HTML5, nu trebuie să închideți toate elementele (de exemplu elementul <p>).
Vă recomandăm să închideți toate elementele HTML.
Închideți elementele HTML goale
În HTML5, este opțional să închideți elementele goale.
HTML5 permite amestecarea literelor mari și a literelor mici în nume de atribute.
Vă recomandăm să folosiți nume de atribute scrise culitere mici.
HTML5 permite ca valorile atributelor să fie scrise fără ghilimele.
Vă recomandăm să puneți între ghilimele valorile atributului.
Adăugați întotdeauna atributul alt la imagini. Acest atribut este important atunci când imaginea din anumite motive nu poate fi afișată. De asemenea, definiți întotdeauna lățimea și înălțimea (width și height) imaginii. Reduce pâlpâirea, deoarece browserul poate rezerva spațiu pentru imagine înainte de încărcare.
HTML5 permite spații în jurul semnelor egale. Dar fără spațiu este mai ușor de citit și grupează entitățile mai bine împreună.
Când utilizați un editor HTML, este incomod să derulați la dreapta și la stânga pentru a citi codul HTML.
Încercați să evitați liniile de cod mai lungi de 80 de caractere.
Nu adăugați linii necompletate fără un motiv.
Pentru lizibilitate, adăugați linii goale pentru a separa blocuri de coduri mari sau logice.
Pentru lizibilitate, adăugați două spații de indentare. Nu folosiți tasta tab.
Nu folosiți linii necompletate și indentate. Nu este necesar să indentizați fiecare elemen
În HTML5, eticheta <html> și eticheta <body> pot fi omise.
Nu vă recomandăm să omiteți etichetele <html> și <body>.
Elementul <html> este rădăcina documentului. Este locul recomandat pentru specificarea limbii paginii.
Omiterea <html> sau <body> poate bloca software-ul DOM și XML.
Omiterea <body> poate produce erori în browserele mai vechi (IE9).
În HTML5, eticheta <head> poate fi omisă.
În mod implicit, browserele vor adăuga toate elementele înainte de <body> la un element implicit <head>.
Puteți reduce complexitatea HTML prin omiterea etichetei <head>
Elementul <title> este necesar în HTML5. Faceți titlul cât mai semnificativ posibil
HTML5 a introdus o metodă pentru a permite proiectanților web să preia controlul asupra viewport-ului, prin eticheta <meta>.
Viewport este zona vizibilă a utilizatorului unei pagini web. Acesta variază în funcție de dispozitiv și va fi mai mic pe un telefon mobil decât pe ecranul computerului.
Lățimea (width) = partea lățimii dispozitivului (width=device-width part) - stabilește lățimea paginii pentru a urma lățimea ecranului dispozitivului (screen-width) (care va varia în funcție de dispozitiv).
Partea inițială = 1,0 setează nivelul de zoom inițial atunci când pagina este încărcată prima dată de browser
Comentariile scurte trebuie scrise pe o singură linie
Comentariile lungi sunt mai ușor de observat dacă sunt indentate în două spații.
Utilizați sintaxa simplă pentru a face legătura cu foile de stil (atributul tip nu este necesar)
Regulile scurte pot fi comprimate
Regulile lungi trebuie scrise pe mai multe rânduri
Puneți suportul de deschidere (opening bracket) pe aceeași linie cu selectorul.
Utilizați un spațiu înainte de suportul de deschidere (opening bracket).
Folosiți două spații de indentare.
Utilizați punct și virgulă după fiecare pereche proprietate-valoare, inclusiv ultima.
Utilizați ghilimele în jurul valorilor numai dacă valoarea conține spații.
Plasați suportul de închidere (opening bracket) pe o linie nouă, fără spații de conducere.
Evitați liniile de peste 80 de caractere.
Se încarcă JavaScript în HTML
Accesarea elementelor HTML cu JavaScript
Utilizați numele de fișiere scrise cu litere mici
Fișierele HTML ar trebui să aibă o extensie .html sau .htm.
Fișierele CSS ar trebui să aibă o extensie .css.
Fișierele JavaScript ar trebui să aibă o extensie .js.
Nu există nicio diferență între extensiile .htm și .html. Ambele vor fi tratate ca HTML de orice browser web sau server web.
Când o adresă URL nu specifică un nume de fișier (cum ar fi https://www.lectii-virtuale.ro/css/), serverul returnează un nume de fișier implicit. Numele de fișiere implicite obișnuite sunt index.html, index.htm, default.html și default.htm.
Dacă serverul dvs. este configurat doar cu "index.html" ca nume de fișier implicit, fișierul dvs. trebuie numit "index.html", nu "index.htm."

Grafică HTML

Pentru a desena grafică pe o pagină web este utilizat elementul HTML <canvas> .
Elementul HTML <canvas> este utilizat pentru a desena grafică, din nou, prin JavaScript.
Elementul <canvas> este doar un container pentru grafică. Pentru a desena grafică trebuie să utilizați JavaScript.
Canvas are mai multe metode pentru a desena căi, cutii, cercuri, text și adăugarea de imagini.
 Specificați întotdeauna un atribut id (la care se face referire într-un script) și un atribut lățime și înălțime (width și height) pentru a defini dimensiunea pânzei (canvas). Pentru a adăuga un chenar (border), utilizați atributul stil (style).
 

HTML SVG

SVG înseamnă grafică vectorială scalabilă.
SVG este utilizat pentru a defini grafica pentru Web.
SVG este o recomandare W3C.
Elementul HTML <svg> este un container pentru grafică SVG.
SVG are mai multe metode pentru desenarea căilor, casetelor, cercurilor, textului și imaginilor grafice.
Diferențele dintre SVG și Canvas
SVG este un limbaj pentru descrierea graficelor 2D în XML.
Canvas desenează grafică 2D, pe fugă (cu un JavaScript).
SVG este bazat pe XML, ceea ce înseamnă că fiecare element este disponibil în DOM SVG. Puteți atașa manipulatoare de evenimente JavaScript (JavaScript event handlers) pentru un element.
În SVG, fiecare formă desenată este amintită ca obiect. Dacă se schimbă atributele unui obiect SVG, browserul poate reda automat forma.
Canvas: Rezoluție dependentă. Fără suport pentru organizatorii de evenimente.Capacități slabe de redare a textului. Puteți salva imaginea rezultată ca .png sau .jpg. Bine potrivit pentru jocuri cu intensitate grafică.
SVG: Rezoluție independentă. Suport pentru operatorii de evenimente. Cel mai potrivit pentru aplicații cu zone de redare mari (Google Maps). Redarea lentă, dacă este complexă (orice lucru care utilizează mult DOM va fi lent). Nu este potrivit pentru aplicații de joc.

HTML Media

Multimedia pe web inseamnă sunet, muzică, videoclipuri, filme și animații.
Exemple: imagini, muzică, sunet, videoclipuri, înregistrări, filme, animații și multe altele.
Paginile web conțin adesea elemente multimedia de diferite tipuri și formate.
Primele browsere web au avut suport doar pentru text, limitat la un singur font într-o singură culoare.
Mai târziu au venit browserele cu suport pentru culori și fonturi și imagini!
Formatele audio, video și animație au fost gestionate diferit de majoritatea browserelor. Diferite formate au fost acceptate, iar unele formate necesită programe auxiliare suplimentare (plug-in-uri) pentru a funcționa.
Sperăm că acest lucru va deveni istorie. Multimedia HTML5 promite un viitor mai ușor pentru multimedia.
Elementele multimedia (cum ar fi audio sau video) sunt stocate în fișiere media.
Cea mai obișnuită modalitate de a descoperi tipul de fișier este de a privi extensia de fișier.
Fișierele multimedia au formate și extensii diferite precum: .swf, .wav, .mp3, .mp4, .mpg, .wmv și .avi.
MP4 este noul și următorul format pentru video pe internet.
MP4 este recomandat de YouTube.
MP4 este acceptat de Flash Players.
MP4 este acceptat de HTML5.
Doar videoclipurile MP4, WebM și Ogg sunt acceptate de standardul HTML5.
MP3 este cel mai nou format pentru muzică înregistrată comprimat. Termenul MP3 a devenit sinonim cu muzica digitală.
Dacă site-ul dvs. web este despre muzică înregistrată, MP3 este alegerea.
Doar MP3, WAV și Ogg audio sunt acceptate de standardul HTML5.

HTML5 Video

Redarea videoclipurilor în HTML
Înainte de HTML5, un videoclip putea fi redat doar într-un browser cu un plug-in (precum flash).
Elementul HTML5 <video> specifică un mod standard de a încorpora un videoclip într-o pagină web.
Pentru a afișa un videoclip în HTML, utilizați elementul <video>.
Atributul de control (controls) adaugă controale video, cum ar fi: redare, pauză și volum.
Este o idee bună să includeți întotdeauna atributele de lățime și înălțime (width și height). Dacă nu sunt setate înălțimea și lățimea (width și height), pagina ar putea clipi în timp ce video-ul se încarcă.
Elementul <source> vă permite să specificați fișiere video alternative din care browserul poate alege. Browserul va folosi primul format recunoscut.
Textul dintre etichetele <video> și </video> va fi afișat numai în browserele care nu acceptă elementul <video>.
Pentru a începe un videoclip automat, utilizați atributul autoplay.
Atributul de redare automată (autoplay) nu funcționează pe dispozitive mobile precum iPad și iPhone.
În HTML5, există 3 formate video acceptate: MP4, WebM și Ogg.
HTML5 definește metodele, proprietățile și evenimentele DOM pentru elementul <video>.
Acest lucru vă permite să încărcați, să redați și să întrerupeți videoclipuri, precum și să setați durata și volumul.
<video> Definește un videoclip sau un film
<source> Definește mai multe resurse media pentru elemente media, cum ar fi <video> și <audio>
<track> Definește piesele text în playerele media

HTML5 Audio

Înainte de HTML5, fișierele audio puteau fi redate doar într-un browser cu un plug-in (cum ar fi flash).
Elementul HTML5 <audio> specifică un mod standard de a încorpora un audio într-o pagină web.
Pentru a reda un fișier audio în HTML, utilizați elementul <audio>:
Atributul de control (controls) adaugă controale audio, cum ar fi redare, pauză și volum.
Elementul <source> vă permite să specificați fișiere audio alternative din care browserul poate alege. Browserul va folosi primul format recunoscut.
Textul dintre etichetele <audio> și </audio> va fi afișat numai în browserele care nu acceptă elementul <audio>.
În HTML5, există 3 formate audio acceptate: MP3, WAV și OGG.
HTML5 definește metodele, proprietățile și evenimentele DOM pentru elementul <audio>.
Acest lucru vă permite să încărcați, să redați și să întrerupeți un fișier audio, precum și să setați durata și volumul.
Există, de asemenea, evenimente DOM care vă pot notifica atunci când un audio începe să se redea, este în pauză etc.
<source> - Definește multiple resurse media pentru elemente media, cum ar fi video și audio.

HTML APIs

API Geolocalizare HTML este utilizat pentru a localiza poziția unui utilizator.
Localizați Poziția Utilizatorului
API Geolocalizare în HTML este utilizat pentru a obține poziția geografică a unui utilizator.
Deoarece acest lucru poate compromite confidențialitatea, poziția nu este disponibilă decât dacă utilizatorul o aprobă.
Geolocalizarea este cea mai precisă pentru dispozitivele cu GPS, cum ar fi smartphone-ul.
Începând cu Chrome 5.0, API-ul de geolocalizare va funcționa numai pe contexte sigure, cum ar fi HTTPS. Dacă site-ul dvs. este găzduit pe o origine nesigură (cum ar fi HTTP), solicitările pentru a obține locația utilizatorilor nu vor mai funcționa.
Utilizarea geolocalizării în HTML
Metoda getCurrentPosition () este utilizată pentru a returna poziția utilizatorului.
Al doilea parametru al metodei getCurrentPosition () este utilizat pentru a gestiona erorile. Specifică o funcție care trebuie executată dacă nu reușește să obțină locația utilizatorului:
Pentru a afișa rezultatul într-o hartă, aveți nevoie de acces la un serviciu de hartă, cum ar fi Google Maps.
Geolocalizarea este de asemenea foarte utilă pentru informații specifice locației, cum ar fi:
Informații locale actualizate.
Afișare Puncte de interes în apropierea utilizatorului.
Navigare rotativă (GPS).
Metoda getCurrentPosition () returnează un obiect de succes. Proprietățile de latitudine, longitudine și precizie sunt întotdeauna returnate. Celelalte proprietăți sunt returnate dacă sunt disponibile:
coords.latitude -  Latitudinea ca număr zecimal (întors întotdeauna)
coords.longitude - Longitudinea ca număr zecimal (întors întotdeauna)
coords.acuratetă - Precizia poziției (întoarsă întotdeauna)
coords.altitude - Altitudinea în metri peste nivelul mării medii (returnat dacă este disponibil)
coords.altitude - Accarity Precizia altitudinii de poziție (returnată dacă este disponibilă)
coords.heading - Titlul ca grade în sensul acelor de ceasornic dinspre nord (returnat dacă este disponibil)
coords.speed - Viteza în metri pe secundă (returnată dacă este disponibilă)
timestamp -  Data / ora răspunsului (returnat dacă este disponibil)
Obiect de geolocalizare - Alte metode interesante
watchPosition () - returnează poziția actuală a utilizatorului și continuă să returneze poziția actualizată pe măsură ce utilizatorul se mișcă (precum GPS-ul într-o mașină).
clearWatch () - Oprește metoda watchPosition ().

HTML5 Drag and Drop

Drag and drop este o caracteristică foarte comună. Este atunci când „apucați” un obiect și îl trageți într-o altă locație.
În HTML5, drag and drop face parte din standard: Orice element poate fi tras.
Pentru a face un element care poate fi trasat, setați atributul dragable pe true
Atributul ondragstart apelează o funcție, drag (eveniment), care specifică ce date trebuie să fie trasate.
Metoda dataTransfer.setData () stabilește tipul de date și valoarea datelor trase.
Evenimentul ondragover specifică unde pot fi eliminate datele trase.
În mod implicit, datele / elementele nu pot fi abandonate în alte elemente. Pentru a permite o eliminare, trebuie să prevenim manipularea implicită a elementului.
Acest lucru se realizează prin apelarea metodei event.preventDefault () pentru evenimentul ondragover.
Atunci când datele glisate sunt abandonate, apare un eveniment drop.
Atributul ondrop apelează o funcție, drop(eveniment).
Call preventDefault() - pentru a preveni gestionarea implicită a datelor browserului (implicit este deschis ca link in drop)
Obțineți datele trase cu metoda dataTransfer.getData (). Această metodă va returna orice date care au fost setate la același tip în metoda setData()
Datele trase sunt id-ul elementului tras ("drag1")
Adăugați elementul tras în elementul drop.

Stocare Web în HTML5

Stocare web în HTML - mai bine decât cookie-urile.
Cu stocarea web, aplicațiile web pot stoca datele local în browserul utilizatorului.
Stocarea web este mai sigură și cantități mari de date pot fi stocate local, fără a afecta performanța site-ului web.
Spre deosebire de cookie-uri, limita de stocare este mult mai mare (cel puțin 5 MB) și informațiile nu sunt transferate niciodată pe server.
Stocarea web este pe origine (pe domeniu și protocol). Toate paginile, de la o origine, pot stoca și accesa aceleași date.
Obiecte de stocare Web în HTML
Stocarea web în HTML furnizează două obiecte pentru stocarea datelor pe client:
window.localStorage - stochează date fără dată de expirare.
window.sessionStorage - stochează datele pentru o sesiune (datele se pierd la închiderea filei browserului).
Înainte de a utiliza stocarea web, verificați asistența browserului pentru localStorage și sessionStorage.
Obiectul localStorage stochează datele fără data de expirare. Datele nu vor fi șterse atunci când browserul este închis și vor fi disponibile a doua zi, săptămână sau an.
Perechile nume / valoare sunt întotdeauna stocate ca șiruri. Nu uitați să le convertiți în alt format atunci când este nevoie!
Obiectul sessionStorage este egal cu obiectul localStorage, cu excepția faptului că stochează datele pentru o singură sesiune. Datele sunt șterse atunci când utilizatorul închide fila browserului specific.
 

HTML5 Web Workers

Un lucrător web este un JavaScript care rulează în fundal, fără a afecta performanța paginii.
Când executați scripturi într-o pagină HTML, pagina nu răspunde până la finalizarea scriptului.
Un lucrător web (web worker) este un JavaScript care rulează în fundal, independent de alte scripturi, fără a afecta performanța paginii. Puteți continua să faceți orice doriți: făcând click, selectând lucruri etc., în timp ce lucrătorul web (web worker) rulează în fundal.
Înainte de a crea un lucrător web (web worker), verificați dacă browserul utilizatorului îl acceptă.
Creați un fișier Web Worker.
Creăm lucrătorul nostru web (web worker) într-un JavaScript extern.
Creem un script care contează. Scriptul este stocat în fișierul "demo_workers.js".
Apoi putem trimite și primi mesaje de la lucrătorul web (web worker).
Adăugați un ascultător de eveniment „onmessage” la lucrătorul web (web worker).
Când lucrătorul web (web worker) postează un mesaj, codul din ascultătorul evenimentului este executat. Datele de la lucrătorul web (web worker) sunt stocate în event.data.
Încheiați un lucrător web (web worker).
Când se creează un obiect de lucru web(web worker), acesta va continua să asculte mesajele (chiar și după terminarea scriptului extern) până la încheierea acestuia.
Pentru a încheia un lucrător web (web worker) și a resurselor gratuite pentru browser / computer, utilizați metoda terminare ().
Reutilizați Web Worker.
Dacă setați variabila lucrător (worker) pe nedeterminată, după terminarea acesteia, puteți refolosi codul.
Întrucât lucrătorii web (web workers) se află în fișiere externe, aceștia nu au acces la următoarele obiecte JavaScript:
Obiectul ferestrei.
Obiectul documentului.
Obiectul părinte.

Evenimente trimise de server în HTML5

Evenimentele trimise de server permit unei pagini web să primească actualizări de la un server.
Evenimente trimise de server - mesagerie unidirecțională.
Un eveniment trimis de server este atunci când o pagină web primește automat actualizări de la un server.
Acest lucru era posibil și înainte, dar pagina web ar trebui să întrebe dacă există actualizări disponibile. Cu evenimente trimise de server, actualizările vin automat.
Obiectul EventSource este utilizat pentru a primi notificări de evenimente trimise de server.
Creați un nou obiect EventSource și specificați adresa URL a paginii care trimite actualizările (în acest exemplu "demo_sse.php").
De fiecare dată când se primește o actualizare, apare evenimentul onmessage.
Când are loc un eveniment onmessage, introduceți datele primite în elementul cu id = "result".
Verificați asistența pentru evenimente trimise de server

Aveți nevoie de un server capabil să trimită actualizări de date (cum ar fi PHP sau ASP).
Sintaxa fluxului de evenimente din partea serverului este simplă. Setați antetul „Content-Type” la „text / stream-event”. Acum puteți începe să trimiteți fluxuri de evenimente.
Setați antetul „Content-Type” la „text / stream-event”.
Specificați că pagina nu ar trebui să fie în cache.
Afișați datele care trebuie trimise (începeți întotdeauna cu „date:”).
Curățați datele de ieșire înapoi pe pagina web.
Evenimentul onmessage pentru a primi mesaje.
Alte evenimente:
onopen - Când se deschide o conexiune la server.
onmessage - Când un mesaj este primit.
onerror - Când apare o eroare.

CSS Sintaxă

Un set de reguli CSS constă dintr-un selector și un bloc de declarații.
Selectorul indică elementul HTML pe care doriți să-l creeze în stil.
Blocul de declarație conține una sau mai multe declarații separate prin punct și virgulă.
Fiecare declarație include un nume de proprietate CSS și o valoare, separate de două puncte.
O declarație CSS se încheie întotdeauna cu punct și virgulă, iar blocurile de declarație sunt înconjurate de acolade.
Comentariile sunt utilizate pentru a explica codul și pot fi utile atunci când editați codul sursă la o dată ulterioară.
Comentariile sunt ignorate de browsere.
Un comentariu CSS începe cu / * și se termină cu * /. De asemenea, comentariile pot cuprinde mai multe linii.

Culori CSS

Culorile sunt specificate folosind nume de culori predefinite sau valori RGB, HEX, HSL, RGBA, HSLA.
Nume de culoare CSS.
În CSS, o culoare poate fi specificată folosind un nume de culoare.
CSS / HTML acceptă 140 de nume standard de culori.
Culoare de fundal CSS (CSS Background Color).
Puteți seta culoarea de fundal pentru elementele HTML.
Culoare text CSS (CSS Text Color).
Puteți seta culoarea textului.
Culoarea marginilor în CSS (CSS Border Color).
Puteți seta culoarea marginilor.
Valori de culoare CSS (CSS Color Values).
În CSS, culorile pot fi de asemenea specificate folosind valori RGB, valori HEX, valori HSL, valori RGBA și valori HSLA.
Valoarea CSS RGB
În CSS, o culoare poate fi specificată ca valoare RGB, folosind această formulă:
rgb (roșu, verde, albastru) / rgb(red, green, blue)
Fiecare parametru (roșu, verde și albastru)/rgb(red, green, blue) definește intensitatea culorii între 0 și 255.
De exemplu, rgb (255, 0, 0) este afișat ca roșu, deoarece roșul este setat la valoarea cea mai mare (255), iar celelalte sunt setate pe 0.
Pentru a afișa culoarea neagră, toți parametrii de culoare trebuie să fie setați la 0, astfel: rgb (0, 0, 0).
Pentru a afișa culoarea albă, toți parametrii de culoare trebuie să fie setați la 255, astfel: rgb (255, 255, 255).
Valoarea CSS HEX
În CSS, o culoare poate fi specificată folosind o valoare hexadecimală sub forma:
#rrggbb
În cazul în care rr (roșu), gg (verde) și bb (albastru) sunt valori hexadecimale între 00 și ff (la fel ca zecimale 0-255).
De exemplu, # ff0000 este afișat ca roșu, deoarece roșul este setat la cea mai mare valoare (ff), iar celelalte sunt setate la cea mai mică valoare (00).
Valoare HSL.
În CSS, o culoare poate fi specificată folosind nuanță, saturație și ușurință (HSL) sub forma:
hsl (nuanță, saturație, ușurință)/ hsl (hue, saturation, lightness).
Hue este un grad pe roata de culoare de la 0 la 360. 0 este roșu, 120 este verde și 240 albastru.
Saturația este o valoare procentuală, 0% înseamnă o nuanță de gri, iar 100% este culoarea completă.
De asemenea, lumina este procentuală, 0% este negru, 50% nu este nici lumină, nici întunecată, 100% alb.
Saturația (saturation).
Saturația poate fi descrisă ca intensitatea unei culori.
100% este de culoare pură, fără nuanțe de gri
50% este 50% gri, dar puteți vedea în continuare culoarea.
0% este complet gri, nu mai puteți vedea culoarea.
Luminozitate (Lightness).
Luminozitatea unei culori poate fi descrisă cât de multă lumină doriți să dați culorii, unde 0% nu înseamnă lumină (negru), 50% înseamnă 50% lumină (nici întuneric, nici lumină) 100% înseamnă lumină completă (alb).
Nuanțele de gri sunt adesea definite prin setarea nuanței și a saturației la 0 și reglați luminozitatea de la 0% la 100% pentru a obține nuanțe mai închise / mai deschise.
Valoarea RGBA.
Valorile de culoare RGBA sunt o extensie a valorilor de culoare RGB cu un canal alfa - care specifică opacitatea unei culori.
O valoare de culoare RGBA este specificată cu:
rgba (roșu, verde, albastru, alfa) / rgba(red, green, blue, alpha)
Parametrul alfa este un număr între 0.0 (complet transparent) și 1.0 (deloc transparent).
Valoarea HSLA.
Valorile de culoare HSLA sunt o extensie a valorilor de culoare HSL cu un canal alfa - care specifică opacitatea unei culori.
O valoare de culoare HSLA este specificată cu:
hsla (nuanță, saturație, luminozitate, alfa) / hsla (hue, saturation, lightness, alpha)
Parametrul alfa este un număr între 0.0 (complet transparent) și 1.0 (deloc transparent).

CSS Fundaluri

Proprietățile de fundal CSS sunt utilizate pentru a defini efectele de fundal pentru elemente.
Proprietăți de fundal CSS: culoare de fundal, imagine de fundal, fundal repetare, background-attachment, background-position.
Culoare de fundal CSS ( CSS background-color).
Proprietatea de culoare de fundal specifică culoarea de fundal a unui element.
Cu CSS, o culoare este cel mai des specificată de: un nume de culoare valid - precum „roșu”, o valoare HEX - ca „# ff0000”, o valoare RGB - ca „rgb (255,0,0)”.
Imagine de fundal CSS (CSS background-image)
Proprietatea de fundal imagine specifică o imagine pe care să o folosească ca fundal al unui element.
În mod implicit, imaginea este repetată, astfel încât acoperă întregul element.
Când utilizați o imagine de fundal, utilizați o imagine care nu perturba textul.
Repetare de fundal CSS (CSS background-repeat)
În mod implicit, proprietatea imaginii de fundal repetă o imagine atât pe orizontală cât și pe verticală.
Unele imagini trebuie repetate doar pe orizontală sau vertical sau vor arăta ciudat, astfel:
Pentru a repeta o imagine pe verticală, setați background-repeat: repeat-y;
Fundal CSS-repetare: nu se repetă (CSS background-repeat: no-repeat)
Afișarea imaginii de fundal o singură dată este, de asemenea, specificată de proprietatea background-repeat.
În exemplul de mai sus, imaginea de fundal este plasată în același loc cu textul. Vrem să schimbăm poziția imaginii, astfel încât să nu deranjeze prea mult textul.
Poziția de fundal CSS (CSS background-position).
Proprietatea poziție fundal este utilizată pentru a specifica poziția imaginii de fundal.
Atasament de fundal CSS (CSS background-attachment).
Proprietatea de atașare de fundal specifică dacă imaginea de fundal trebuie să se deruleze sau să fie fixată (nu va defila cu restul paginii).
Fundal CSS - proprietatea shorthand
Pentru a scurta codul, este de asemenea posibil să specificați toate proprietățile de fundal într-o singură proprietate. Aceasta se numește o proprietate shorthand.
Proprietatea shorthand pentru fundal este fundal.
Când folosiți proprietatea shorthand ordinea valorilor proprietății este:
background-color
background-image
background-repeat
background-attachment
background-position
Nu contează dacă lipsește una din valorile proprietății, atât timp cât celelalte sunt în această ordine.
background - Setează toate proprietățile fundalului într-o singură declarație
background-attachment - Setează dacă o imagine de fundal este fixă sau defilează cu restul paginii
background-clip - Specifică zona de pictură a fundalului
background-color - Setează culoarea de fundal a unui element
background-image - Setează imaginea de fundal pentru un element
background-origin - Specifică unde este / sunt poziționate imaginile de fundal
background-position - Setează poziția de pornire a unei imagini de fundal
background-repeat - Setează modul în care se va repeta o imagine de fundal
background-size - Specifică dimensiunea imaginii de fundal

CSS Borders

Proprietăți CSS Borders.
Proprietățiile CSS Borders vă permit să specificați stilul, lățimea și culoarea chenarului unui element.
CSS Border Style.
Proprietatea CSS Border Style specifică ce fel de chenar trebuie afișat.
Sunt permise următoarele valori:
dotted (punctat) - Definește un chenar (border) punctat.
dashed - Definește o bordură (border) punctată.
solid - Definește o bordură (border) solidă.
double (dublu) - Definește o bordură (border) dublă.
groove - Definește un chenar cu caneluri 3D. Efectul depinde de valoarea culorii bordurii (border-color).
ridge - Definește un chenar (border) ridicat 3D. Efectul depinde de valoarea culorii bordurii (border-color).
inset - Definește un chenar (border) de inserție 3D. Efectul depinde de valoarea culorii bordurii (border-color).
outset - Definește un chenar (border) de declanșare 3D. Efectul depinde de valoarea culorii bordurii (border-color).
none - Nu definește nici o frontieră (border).
hidden (ascuns) - definește un chenar (border) ascuns.
Proprietatea border-style poate avea de la una până la patru valori (pentru top border, right border, bottom border, left border).
Niciuna dintre celelalte proprietăți CSS border descrise mai jos nu va avea NICIUN efect, decât dacă este setată proprietatea border-style!
Lățimea marginilor CSS (CSS Border Width)
Proprietatea border-width specifică lățimea celor patru chenare.
Lățimea poate fi setată ca o dimensiune specifică (în px, pt, cm, em, etc.) sau folosind una dintre cele trei valori predefinite: subțire, medie sau groasă (thin, medium, thick.).
Proprietatea border-width poate avea de la una până la patru valori (pentru marginea superioară, granița dreaptă, limita de jos și marginea din stânga/ top border, right border, bottom border, left border).
CSS Border Color
Proprietatea border-color este utilizată pentru a seta culoarea celor patru chenare.
Culoarea poate fi setată de:
name - Specificați un nume de culoare, cum ar fi „red”.
Hex - Specificați o valoare hexagonală, cum ar fi „# ff0000”.
RGB - Specificați o valoare RGB, cum ar fi „rgb (255,0,0)”.
transparent.
Proprietatea border-color poate avea de la una până la patru valori (pentru marginea de sus, marginea dreaptă, limita de jos și marginea din stânga/top border, right border, bottom border, left border).Dacă border-color nu este setată, moștenește culoarea elementului.
CSS Border - Individual Sides
Din exemplele de mai sus, ați văzut că este posibil să specificați o frontieră diferită pentru fiecare parte.
În CSS, există, de asemenea, proprietăți pentru specificarea fiecărui chenar (sus, dreapta, jos și stânga/top, right, bottom, left).
Dacă proprietatea border-style are patru valori:
border-style: punctat dublu punctat solid.
top border este punctat.
right border este solid.
bottom border este dublu.
left border este punctat.
Dacă proprietatea border-style are trei valori:border-style: dublu solid punctat.
top border este punctat.
right și left borders sunt solide.
bottom border este dublu.
Dacă proprietatea border-style are două valori:
border-style: solid punctat.
top și bottom borders sunt punctate.
right și left borders sunt solide.
Dacă proprietatea border-style are o valoare:
border-style: punctat.
toate cele patru granițe sunt punctate.
Proprietatea border-style este folosită în exemplul de mai sus. Cu toate acestea, funcționează, de asemenea, cu border-width și border-color.
CSS Border - Proprietatea Shorthand
După cum puteți vedea din exemplele de mai sus, există multe proprietăți de luat în considerare atunci când aveți de-a face cu frontierele.
Pentru a scurta codul, este de asemenea posibil să se specifice toate proprietățile de frontieră individuale într-o singură proprietate.
Proprietatea de frontieră (border) este o proprietate shorthand pentru următoarele proprietăți individuale de frontieră:
border-width
border-style (required)
border-color
Frontierele rotunjite CSS (CSS Rounded Borders).
Proprietatea border-radius este utilizată pentru a adăuga borduri rotunjite la un element.
Toate proprietățile top border într-o singură declarație.
Acest exemplu demonstrează o proprietate shorthand pentru setarea tuturor proprietăților pentru top border într-o singură declarație.
Setați stilul marginii de jos (bottom border).
Acest exemplu demonstrează cum să setați stilul marginii de jos (bottom border).
Setați lățimea marginii din stânga (left border).
Acest exemplu demonstrează modul de setare a lățimii marginii din stânga (left border).
Setați culoarea celor patru chenare (borders).
Acest exemplu demonstrează cum să setați culoarea celor patru chenare. Poate avea de la una la patru culori.
Setați culoarea marginii drepte (right border).
Acest exemplu demonstrează cum să setați culoarea marginii drepte (right border).
border Setează toate proprietățile de frontieră într-o singură declarație
border-bottom Setează toate proprietățile frontierei de jos într-o singură declarație
border-bottom-color Setează culoarea marginii de jos
border-bottom-style Setează stilul marginii de jos
border-bottom-width Setează lățimea marginii de jos
border-color Setează culoarea celor patru chenare
border-left Stabilește toate proprietățile frontierei din stânga într-o singură declarație
border-left-color Setează culoarea marginii din stânga
border-left-style Setează stilul chenarului din stânga
border-left-width Setează lățimea marginii din stânga
border-radius Setează toate cele patru chenare - * - proprietăți ale razei pentru colțurile rotunjite
border-right Setează toate proprietățile de frontieră dreaptă într-o singură declarație
border-right-color Setează culoarea marginii drepte
border-right-style Setează stilul chenarului drept
border-right-width Setează lățimea marginii drepte
border-style Setează stilul celor patru chenare
border-top Setează toate proprietățile de frontieră de sus într-o singură declarație
border-top-color Setează culoarea marginii superioare
border-top-style Setează stilul chenarului superior
border-top-width Setează lățimea marginii superioare
border-width Setează lățimea celor patru chenare

CSS Height și Width

Proprietățiile height și width sunt utilizate pentru a seta înălțimea și lățimea unui element.
Proprietățiile height și width nu includ padding, borders sau margins. Stabilește înălțimea / lățimea (height/width) zonei din interiorul padding-ului, border-ului și marginii elementului.
Valori CSS înălțime / lățime (height/width)
Proprietățiile de înălțime și lățime (height/width) pot avea următoarele valori:
auto - Aceasta este implicită. Browserul calculează înălțimea și lățimea (height/width).
lenght - Definește înălțimea / lățimea (height/width) în px, cm etc.
% - Definește înălțimea / lățimea (height/width) în procente din blocul conținut.
inițial - Setează înălțimea / lățimea (height/width) la valoarea implicită.
inherit - Înălțimea / lățimea (height/width) vor fi moștenite de la valoarea sa parentală.
Nu uitați că proprietățiile de înălțime și lățime nu includ padding, borders sau margins! Ei setează înălțimea / lățimea zonei din interiorul paddingu-ului, border-ului și marginii elementului!
Setarea lățimii maxime (max-width).
Proprietatea max-width este utilizată pentru a seta lățimea maximă a unui element.
Lățimea maximă (max-width) poate fi specificată în valori de lungime, cum ar fi px, cm, etc., sau în procente (%) din blocul conținut sau setat pe niciunul (acesta este implicit. Înseamnă că nu există o lățime maximă).
Problema cu <div> de mai sus apare atunci când fereastra browserului este mai mică decât lățimea elementului (500px). Browserul apoi adaugă o pagină de defilare orizontală la pagină.
Folosind în schimb această lățime maximă (max-width), în această situație, veți îmbunătăți gestionarea browserului de la ferestrele mici.
Trageți fereastra browserului la o lățime mai mică de 500px, pentru a vedea diferența dintre cele două div-uri!
height - Setează înălțimea unui element.
max-height - Setează înălțimea maximă a unui element.
max-width - Setează lățimea maximă a unui element.
min-height - Setează înălțimea minimă a unui element.
min-width - Setează lățimea minimă a unui element.
width - Setează lățimea unui element.

CSS Box Model

Toate elementele HTML pot fi considerate casete (boxes). În CSS, termenul „model de cutie”(box model) este utilizat atunci când vorbim despre design și aspect.
Modelul CSS box este în esență o cutie care se înfășoară în jurul fiecărui element HTML. Este format din: margini, borders, padding și conținutul real.
Content - Conținutul căsuței, unde apar text și imagini.
Padding - Șterge o zonă din jurul conținutului. Padding este transparent.
Border - O graniță care se întinde pe padding și content.
Margin - Șterge o zonă în afara graniței. Marginea este transparentă
.Modelul casetei (box model) ne permite să adăugăm un chenar în jurul elementelor și să definim spațiul dintre elemente.
Lățimea și înălțimea unui element (Width and Height of an Element).
Pentru a seta corect lățimea și înălțimea (width și height) unui element în toate browserele, trebuie să știți cum funcționează modelul casetei (box model).

CSS Outline

Un outline este o linie care este desenată în jurul elementelor, în afara granițelor (borders), pentru a face ca elementul să „iasă în evidență”.
CSS are următoarele proprietăți outline (contur): outline-style, outline-color, outline-width, outline-offset, outline.
Conturul (outline) diferă de granițe (borders)! Spre deosebire de graniță (border), conturul (outline) este tras în afara graniței elementului și poate suprapune alt conținut. De asemenea, conturul (outline) NU este o parte din dimensiunile elementului; lățimea și înălțimea (height și weight) totală a elementului nu este afectată de lățimea conturului.
CSS Outline Style.
Proprietatea outlyne style specifică stilul conturului și poate avea una dintre următoarele valori:
dotted (punctat) - Definește un contur punctat.
dashed (marcat) - Definește un contur discret.
solid - Definește un contur solid.
double (dublu) - Definește un contur dublu.
groove (canelură) - Definește un contur în canelură 3D.
ridge - Definește un contur 3D ridged.
inset - Definește un contur de inserție 3D.
outset - Definește un contur de declanșare 3D.
none - Nu definește contur.
hidden (ascuns) - Definește un contur ascuns.
Niciuna dintre celelalte proprietăți outline nu va avea niciun efect, cu excepția cazului în care proprietatea în stil outline este setată!
CSS Outline Color.
Proprietatea CSS outline-color este utilizată pentru a seta culoarea conturului.
Culoarea poate fi setată de:
name - Specificați un nume de culoare, cum ar fi „red”.
RGB - Specificați o valoare RGB, cum ar fi „rgb (255,0,0)”.
Hex - Specificați o valoare hexagonală, cum ar fi „# ff0000”.
invert - Realizează o inversare a culorii (care asigură că conturul este vizibil, indiferent de fundalul culorii).
CSS Outline Width.
Proprietatea outline-width specifică lățimea conturului și poate avea una dintre următoarele valori:
thin (subțire) - de obicei 1px.
medium (mediu) - de obicei 3px.
thick (gros) - de obicei 5px.
O dimensiune specifică (în px, pt, cm, em, etc).
CSS Outline - Proprietatea Shorthand
Proprietatea outline este o proprietate shorthand pentru setarea următoarelor proprietăți outline individuale: outline-width, outline-style (required), outline-color.
CSS Outline Offset
Proprietatea outline-offset adaugă spațiu între un outline și edge/ border unui element. Spațiul dintre un element și conturul său este transparent.
Proprietățiile CSS Outline: outline, outline-color, outline-offset, outline-style, outline-width.
outline - O proprietate shorthand pentru setarea contur-lățime, stil contur și contur-culoare într-o singură declarație.
outline-color - Setează culoarea unui contur.
outline-offset - Specifică spațiul dintre un contur și marginea sau marginea unui element.
outline-style - Setează stilul unui contur.
outline-width - Setează lățimea unui contur.

CSS Text

Proprietatea de culoare este utilizată pentru a seta culoarea textului. Culoarea este specificată de:
un nume de culoare - ca „roșu”
o valoare HEX - ca „# ff0000”
o valoare RGB - ca „rgb (255,0,0)”
Consultați CSS Color Values pentru o listă completă a valorilor de culoare posibile.
Culoarea implicită a textului pentru o pagină este definită în selectorul body.
Aliniere text (Text Alignment).
Proprietatea text-align este utilizată pentru a seta alinierea orizontală a unui text.
Un text poate fi aliniat la stânga sau la dreapta, centrat sau justificat (left sau right, centered sau justified).
Când proprietatea de aliniere a textului este „justify”, fiecare linie este întinsă astfel încât fiecare linie să aibă lățimea egală, iar marginile stânga și dreapta sunt drepte (ca în reviste și ziare).
Decorarea textului (Text Decoration).
Proprietatea text-decoration este utilizată pentru a seta sau elimina decorațiunile din text.
Valoarea text-decoration: none; este adesea folosit pentru a elimina sublinierile din link-uri.
Nu este recomandat să subliniați textul care nu este o legătură, deoarece acest lucru încurcă cititorul.
Transformarea textului.
Proprietatea text-transform este utilizată pentru a specifica litere mari și minuscule (uppercase sau lowercase) într-un text.
Poate fi folosit pentru a transforma totul în litere mari sau minuscule (uppercase sau lowercase) sau pentru a valorifica prima literă a fiecărui cuvânt.
Indentare text (Text Indentation).
Proprietatea text-indent este utilizată pentru a specifica indentarea primei linii a unui text.
Spațiul dintre litere (Letter Spacing)
Proprietatea de spațiere a literelor (letter-spacing) este utilizată pentru a specifica spațiul dintre caracterele unui text.
Înălţimea liniei (Line Height).
Proprietatea line-height este utilizată pentru a specifica spațiul dintre linii.
Direcția textului (Text Direction).
Proprietatea direction este utilizată pentru a schimba direcția textului unui element.
Distanțarea cuvintelor (Word Spacing)
Proprietatea word-spacing a cuvintelor este utilizată pentru a specifica spațiul dintre cuvintele dintr-un text.
color - Setează culoarea textului.
direction -  Specifică direcția textului / direcția de scriere.
letter-spacing - Crește sau scade spațiul dintre caractere dintr-un text.
line-height - Setează înălțimea liniei.
text-align - Specifică alinierea orizontală a textului.
text-decoration - Specifică decorația adăugată la text.
text-indent - Specifică indentarea primei linii dintr-un bloc de text.
text-shadow - Specifică efectul umbre adăugat textului.
text-transform - Controlează capitalizarea textului.
text-overflow - Specifică modul în care conținutul revărsat care nu este afișat trebuie semnalat utilizatorului.
unicode-bidi - Se folosește împreună cu proprietatea de direcție pentru a seta sau returna dacă textul ar trebui să fie anulat pentru a accepta mai multe limbi din același document.
vertical-align - Setează alinierea verticală a unui element.
white-space - Specifică modul în care este gestionat spațiul alb din interiorul unui element.
word-spacing - Crește sau scade spațiul dintre cuvinte dintr-un text.

CSS Fonturi

Proprietățiile fontului CSS definesc font family, boldness, size și style of a text.
Familii de fonturi CSS (CSS Font Families).
În CSS, există două tipuri de nume de fonturi:
generic family - un grup de familii de fonturi cu aspect similar (cum ar fi „Serif” sau „Monospace”).
font family - o familie de fonturi specifică (cum ar fi „Times New Roman” sau „Arial”).
Font Family.
Familia de fonturi a unui text este setată cu proprietatea font-family.
Proprietatea font-family ar trebui să dețină mai multe nume de font ca sistem „fallback”. Dacă browserul nu acceptă primul font, încearcă următorul font și așa mai departe.
Începeți cu fontul dorit și terminați cu o familie generică (generic family), pentru a permite browserului să aleagă un font similar în familia generică (generic family), dacă nu sunt disponibile alte fonturi.
Dacă numele unei familii de fonturi este mai mult de un cuvânt, acesta trebuie să fie între ghilimele, cum ar fi: „Times New Roman”.
Mai multe familii de fonturi sunt specificate într-o listă separată de virgule.
Stilul fontului (Font Style)
Proprietatea font-style este utilizată mai ales pentru a specifica textul italic.
Această proprietate are trei valori:
normal - Textul este afișat normal.
italic - Textul este afișat cu caractere italice.
oblique - Textul este „aplecat” (oblic este foarte similar cu italic, dar mai puțin susținut).
Proprietatea font-size stabilește dimensiunea textului.
Posibilitatea de a gestiona dimensiunea textului este importantă în proiectarea web. Cu toate acestea, nu ar trebui să utilizați ajustări de dimensiune a fontului pentru a face ca paragrafele să arate ca titluri sau rubricile să pară paragrafe.
Utilizați întotdeauna etichetele HTML adecvate, cum ar fi <h1> - <h6> pentru titluri și <p> pentru paragrafe.
Valoarea font-size poate fi o dimensiune absolută sau relativă.
Dimensiune absolută:
Setează textul la o dimensiune specificată.
Nu permite utilizatorului să modifice dimensiunea textului în toate browserele (greșit din motive de accesibilitate).
Dimensiunea absolută este utilă atunci când dimensiunea fizică a ieșirii este cunoscută.
Mărime relativă:
Setează dimensiunea în raport cu elementele din jur.
Permite unui utilizator să modifice dimensiunea textului în browsere.
Dacă nu specificați o dimensiune a fontului, dimensiunea implicită pentru textul normal, cum ar fi alineatele, este 16px (16px = 1em).
Setarea dimensiunii fontului cu pixeli.
Setarea dimensiunii textului cu pixeli vă oferă un control complet asupra dimensiunii textului.
Dacă utilizați pixeli, puteți utiliza în continuare zoom tool pentru a redimensiona întreaga pagină.
Setați dimensiunea fontului cu Em
Pentru a permite utilizatorilor să redimensioneze textul (în meniul browserului), mulți dezvoltatori folosesc em în loc de pixeli.
Unitatea de dimensiuni em este recomandată de W3C.
1em este egal cu dimensiunea curentă a fontului. Dimensiunea implicită a textului în browsere este 16px. Deci, dimensiunea implicită de 1em este 16px.
Mărimea poate fi calculată de la pixeli la em folosind această formulă: pixeli / 16 = em.
Font Weight
Proprietatea font-weight specifică greutatea unui font:
Responsive Font Size
Mărimea textului poate fi setată cu o unitate vw, ceea ce înseamnă „viewport width”.
Astfel dimensiunea textului va urma dimensiunea ferestrei browserului:
Font Variant
Proprietatea font-variant specifică dacă un text ar trebui să fie afișat sau nu într-un font cu caractere mici.
Într-un font cu caractere mici, toate literele mici sunt convertite în litere mari. Cu toate acestea, literele majuscule convertite apar cu o dimensiune de font mai mică decât literele majuscule originale din text.
font - Setează toate proprietățile fontului într-o singură declarație.
font-family - Specifică familia de fonturi pentru text.
font-size - Specifică dimensiunea fontului textului.
font-style - Specifică stilul de font pentru text.
font-variant - Specifică dacă un text trebuie să fie afișat sau nu într-un font cu caractere mici.
font-weight - Specifică greutatea unui font.

CSS Icons

Cum se adaugă icoane
Cel mai simplu mod de a adăuga o pictogramă pe pagina dvs. HTML, este cu o bibliotecă de pictograme, cum ar fi Font Awesome.
Adăugați numele clasei de pictograme specificate la orice element HTML inline (cum ar fi <i> sau <span>).
Toate pictogramele din bibliotecile cu pictograme de mai jos, sunt vectori scalabili care pot fi personalizați cu CSS (dimensiune, culoare, umbră etc.)
Font Awesome Icons
Pentru a utiliza pictogramele Font Awesome, accesați fontawesome.com, conectați-vă și obțineți un cod pe care să îl adăugați în secțiunea <head> a paginii dvs. HTML:
<script src = "https://kit.fontawesome.com/yourcode.js"> </script>.
Bootstrap Icons.
Pentru a utiliza glificile Bootstrap, adăugați următoarea linie în secțiunea <head> a paginii dvs. HTML:
<link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">.
Bootstrap Icons.
Pentru a utiliza glificile Bootstrap, adăugați următoarea linie în secțiunea <head> a paginii dvs. HTML:
<link rel = "stylesheet" href = "https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">.

CSS Link-uri

Cu CSS, linkurile pot fi proiectate în moduri diferite.
Styling Links.
Linkurile pot fi realizate cu orice proprietate CSS (de exemplu, culoare, familie de fonturi, fundal etc / color, font-family, background).
În plus, legăturile (linkurile) pot fi proiectate diferit în funcție de starea în care se află.
Cele patru stări de legături (linkuri) sunt:
a: link - o legătură normală, nevăzută.
a:visited - un link pe care l-a vizitat utilizatorul.
a: hover - o legătură atunci când utilizatorul dă peste ea.
a: active - un link în momentul în care este dat click.
Când setați stilul pentru mai multe stări de legătură, există câteva reguli de comandă:
a: hover - TREBUIE să vină după a:link și a:visited.
a: active - TREBUIE să vină după a:hover.
Decorarea textului (Text Decoration).
Proprietatea text-decoration este utilizată mai ales pentru a elimina sublinierile din link-uri.
Culoare de fundal (Background Color)
Proprietatea background-color poate fi utilizată pentru a specifica o culoare de fundal pentru link-uri.
Advanced - Link Buttons.

CSS Liste

În HTML, există două tipuri principale de liste:
liste neordonate (<ul>) - articolele din listă sunt marcate cu buline.
liste ordonate (<ol>) - elementele din listă sunt marcate cu numere sau litere.
Proprietățiile listei CSS vă permit să:
Setați markeri de articole de listă diferite pentru liste ordonate.
Setați markeri de articole de listă diferite pentru liste neordonate.
Setați o imagine ca marker a elementelor din listă.
Adăugați culori de fundal la liste și elemente de listă.
Different List Item Markers
Proprietatea list-style-type specifică tipul markerului de element de listă.
O imagine ca marker element de listă
Proprietatea list-style-image specifică o imagine ca marker al elementului de listă.
Poziționează marcatorii de elemente de listă (Position The List Item Markers)
Proprietatea list-style-position specifică poziția marcatorilor de elemente de listă (puncte glonț).
"list-style-position: outside;" - înseamnă că punctele glonț se vor afla în afara articolului din listă. Începutul fiecărei linii a unui element de listă va fi aliniat vertical. Aceasta este implicită.
"list-style-position: inside;" - înseamnă că punctele glonț vor fi în interiorul articolului din listă. Deoarece face parte din elementul listei, acesta va face parte din text și va împinge textul la început.
Eliminați setările implicite
Proprietatea list-style-type:none poate fi utilizată pentru a elimina markerele / gloanțele. Rețineți că lista are, de asemenea, margin și padding implicite. Pentru a elimina acest lucru, adăugați margin: 0 și padding: 0 până la <ul> sau <ol>.
Listă - Proprietatea Shorthand
Proprietatea list-style este o proprietate de tip shorthand. Este utilizat pentru a seta toate proprietățile listei într-o singură declarație.
Când utilizați proprietatea shorthand, ordinea valorilor proprietății este:
list-style-type - (dacă este specificată o imagine-list-style-image, valoarea acestei proprietăți va fi afișată dacă imaginea din anumite motive nu poate fi afișată)
list-style-position - (specifică dacă markerii elementelor de listă trebuie să apară în interiorul sau în afara fluxului de conținut)
list-style-image (specifică o imagine ca marker pentru elementele de listă)
Dacă una din valorile proprietății de mai sus lipsește, valoarea implicită pentru proprietatea lipsă va fi introdusă, dacă există.
Styling List With Colors.
Putem, de asemenea, stiliza listele cu culori, pentru a le face să pară ceva mai interesante.
Orice lucru adăugat la eticheta <ol> sau <ul>, afectează întreaga listă, în timp ce proprietățile adăugate la eticheta <li> vor afecta elementele listei individuale.
list-style Setează toate proprietățile pentru o listă într-o singură declarație.
list-style-image Specifică o imagine ca marker de listă.
list-style-position Specifică poziția markerilor elementelor din listă (puncte glont).
list-style-type Specifică tipul markerului de listă.

CSS Tabele

Aspectul unui tabel HTML poate fi îmbunătățit mult cu CSS.
Bordurile tabelelor
Pentru a specifica bordurile tabelelor în CSS, utilizați proprietatea border.
Reduceți marginile tabelului (Collapse Table Borders)
Proprietatea border-collapse stabilește dacă bordurile tabelului trebuie să fie prăbușite într-un singur chenar:
Dacă doriți doar un chenar în jurul tabelului, specificați numai proprietatea border pentru <tabel>.
Lățimea și înălțimea tabelului (Table Width and Height)
Lățimea și înălțimea (width și height) unui tabel sunt definite prin proprietățiile de lățime și înălțime.
Aliniere orizontală (Horizontal Alignment)
Proprietatea de aliniere text stabilește alinierea orizontală (cum ar fi stânga, dreapta sau centrul) conținutului în <th> sau <td>.
În mod implicit, conținutul elementelor <th> sunt aliniate în centru și conținutul elementelor <td> sunt aliniate la stânga.
Aliniere verticală (Vertical Alignment)
Proprietatea vertical-align stabilește alinierea verticală (cum ar fi partea superioară, inferioară sau mijlocie) a conținutului în <th> sau <td>.
În mod implicit, alinierea verticală a conținutului dintr-un tabel este mijlocie (atât pentru elementele <th> cât și pentru <td>).
Table Padding
Pentru a controla spațiul dintre graniță și conținutul dintr-un tabel, utilizați proprietatea padding pentru elementele <td> și <th>.
Horizontal Dividers
Adăugați proprietatea border-bottom la <th> și <td> pentru horizontal dividers.
Hoverable Table
Utilizați selectorul :hover pe <tr> pentru a evidenția rândurile de tabel cu mouse over.
Striped Tables
Pentru tabele cu dungi zebră (zebra-striped tables), utilizați selecția nth-child() și adăugați o culoare de fundal la toate rândurile de tabele uniforme (sau impare).
Culoarea tabelului (Table Color)
Tabel responsiv (Responsive Table)
Un tabel responsiv va afișa o bară de defilare orizontală dacă ecranul este prea mic pentru a afișa întregul conținut.
Adăugați un element de container (cum ar fi <div>) cu overflow-x: auto în jurul elementului <table> pentru a face să răspundă.
În OS X Lion (pe Mac), barele de defilare sunt ascunse în mod implicit și sunt afișate doar atunci când sunt utilizate (chiar dacă „overflow: scroll” este setat).
Proprietățiile tabelului CSS:
border - Setează toate proprietățile de frontieră într-o singură declarație
border-collapse - Specifică dacă granițele tabelelor trebuie sau nu prăbușite
border-spacing - Specifică distanța dintre marginile celulelor adiacente
caption-side- Specifică amplasarea unei legi de tabel
empty-cells - Specifică dacă se afișează sau nu margini și fundal pe celulele goale dintr-un tabel
table-layout - Setează algoritmul de dispunere care va fi utilizat pentru o tabelă

CSS Display

Layout CSS - Proprietatea display
Proprietatea display este cea mai importantă proprietate CSS pentru controlul aspectului.
Proprietatea display
Proprietatea display specifică dacă / cum este afișat un element.
Fiecare element HTML are o valoare de afișare implicită în funcție de tipul de element. Valoarea implicită a afișajului pentru majoritatea elementelor este block sau inline.
Elemente la nivel de block (Block-level Elements)
Un element la nivel de block (block-level element) pornește întotdeauna pe o nouă linie și ocupă toată lățimea disponibilă (se întinde spre stânga și spre dreapta, cât poate).
Exemple de elemente la nivel de block (block-level element): <div>, <h1> - <h6>, <p>, <form>, <header>, <footer>, <section>.
Elemente în linie (Inline Elements)Un element inline nu pornește de pe o nouă linie și ocupă doar lățimea necesară.
Acesta este un element <span> inline din interiorul unui paragraf.
Exemple de elemente inlinie: <span>, <a>, <img>.
Display: none;
Display: none; este utilizat în mod obișnuit cu JavaScript pentru a ascunde și a arăta elementele fără a le șterge și recrea.
Elementul <script> folosește display: none; ca implicit.
Înlocuire Valoare implicită a afișajului
După cum am menționat, fiecare element are o valoare de afișare implicită. Cu toate acestea, puteți trece peste acest lucru.
Modificarea unui element inline într-un element de block, sau invers, poate fi utilă pentru ca pagina să arate într-un mod specific și să respecte în continuare standardele web.
Un exemplu obișnuit este crearea de elemente inline <li> pentru meniurile orizontale.
Setarea proprietății de afișare (display) a unui element modifică doar modul în care este afișat elementul, NU ce fel de element este. Deci, un element inline cu display: block; nu este permis să aibă alte elemente de block în interiorul său.
crearea de elemente inline <li> pentru meniurile orizontale.
afișare elemente <span> ca elemente de block.
afișare elemente <a> ca elemente de block.
Ascunde un element - display:none sau visibility:hidden?
Ascunderea unui element se poate face prin setarea proprietății dispaly la none. Elementul va fi ascuns, iar pagina va fi afișată ca și cum elementul nu este acolo.
visibility:hidden; ascunde de asemenea un element.
Cu toate acestea, elementul va ocupa totuși același spațiu ca înainte. Elementul va fi ascuns, dar afectează în continuare aspectul.
Proprietăți CSS de afișare / vizibilitate:
display - Specifică modul în care trebuie afișat un element.
visibility - Specifică dacă un element trebuie să fie vizibil sau nu.

CSS max-width

CSS Layout - width și max-width. 
Utilizarea width, max-width și margin: auto;
Așa cum am menționat în capitolul precedent; un element la nivel de block (block-level element) ocupă întotdeauna întreaga lățime disponibilă (se întinde spre stânga și spre dreapta, cât poate).
Setarea lățimii (width) unui element la nivel de bloc (block-level element)  va împiedica întinderea sa până la marginile containerului său. Apoi, puteți seta marginile la auto, pentru a centra orizontal elementul în containerul său. Elementul va prelua lățimea specificată, iar spațiul rămas va fi împărțit în mod egal între cele două margini.
Problema cu <div> de mai sus apare atunci când fereastra browserului este mai mică decât lățimea elementului. Browserul apoi adaugă o pagină de defilare orizontală la pagină.
Folosind în schimb această lățime maximă (max-width), în această situație, veți îmbunătăți gestionarea browserului de la ferestrele mici. Acest lucru este important atunci când faceți un site utilizabil pe dispozitive mici.

CSS Position

CSS Layout -  Proprietatea position
Proprietatea position specifică tipul metodei de poziționare utilizate pentru un element (static, relativ, fix, absolut sau lipicios/static, relative, fixed, absolute sau sticky).
Elementele sunt apoi poziționate folosind proprietățiile de sus, de jos, de stânga și de dreapta (top, bottom, left, și right). Cu toate acestea, aceste proprietăți nu vor funcționa decât dacă proprietatea position este setată prima. De asemenea, funcționează diferit în funcție de valoarea poziției.
position: static; (poziție: static)
Elementele HTML sunt poziționate static în mod implicit.
Elementele poziționate static nu sunt afectate de proprietățile de sus, de jos, de stânga și de dreapta.
Un element cu position: static; (poziție: static) nu este poziționat într-un mod special; este poziționat întotdeauna în funcție de fluxul normal al paginii.
Element cu position: relative; (poziție: relativă;)
Un element cu position: relative; (poziție: relativă;) este poziționat în raport cu poziția normală.
Setarea proprietățiilor de sus, dreapta, jos și stânga a unui element relativ poziționat (relatively-positioned element) va face ca acesta să fie ajustat departe de poziția normală. Alt conținut nu va fi ajustat pentru a se încadra în niciun spațiu lăsat de element.
Elementul cu position: fixed; (poziție: fix;)
Un element cu position: fixed; (poziție: fix;) este poziționat în raport cu afișajul, ceea ce înseamnă că acesta rămâne întotdeauna în același loc, chiar dacă pagina este defilată. Proprietățile de sus, dreapta, jos și stânga sunt utilizate pentru poziționarea elementului.
Un element fix nu lasă un gol în pagina în care ar fi fost localizat în mod normal.
Elementul cu position: absolute; (poziție: absolută;)
Un element cu position: absolute; (poziție: absolută;) este poziționat în raport cu strămoșul cel mai apropiat poziționat (în loc de poziționat în raport cu vitrina, ca fix).
In orice caz; dacă un element poziționat absolut nu are strămoși poziționați, acesta folosește corpul documentului și se deplasează împreună cu derularea paginii.
Un element „poziționat” este unul a cărui poziție este orice, cu excepția staticii.
Elementul cu position: sticky; (poziție: lipicios;)
Un element cu position: sticky; (poziție: lipicios;) este poziționat în funcție de poziția de derulare a utilizatorului.
Un element lipicios (sticky) trece între relativ și fix, în funcție de poziția de defilare. Este poziționat relativ până când o poziție de offset dată este întâlnită în vitrină - apoi se „lipeste” în loc (ca poziția: fix).
Internet Explorer, Edge 15 și versiunile anterioare nu acceptă poziționarea sticky. Safari necesită un prefix -webkit- (vezi exemplul de mai jos). De asemenea, trebuie să specificați cel puțin una de sus, dreapta, jos sau stânga pentru ca poziționarea sticky să funcționeze.
În acest exemplu, elementul sticky se lipește în partea de sus a paginii (sus: 0), când atingeți poziția de defilare.
Elemente suprapuse (Overlapping Elements)
Când elementele sunt poziționate, se pot suprapune altor elemente.
Proprietatea indexului z specifică ordinea stivei unui element (care element trebuie plasat în fața sau în spatele celorlalte).
Un element poate avea o comandă a stivei pozitivă sau negativă.
Un element cu o ordine de stivă mai mare este întotdeauna în fața unui element cu o ordine de stivă mai mică.
Dacă două elemente poziționate se suprapun fără z - index specificat, elementul poziționat ultimul în codul HTML va fi afișat în partea de sus.
Poziționarea textului într-o imagine
Cum să poziționați textul peste o imagine.
Toate proprietățiile de poziționare CSS: bottom, clip, left, position, top, right, z-index. 
bottom - Setează marginea inferioară a marginii pentru o casetă poziționată
clip - Clipsează un element absolut poziționat
left - Setează marginea din stânga pentru o cutie poziționată
position - Specifică tipul de poziționare pentru un element
right - Setează marginea din dreapta pentru o cutie poziționată
top - Setează marginea superioară a marginii pentru o casetă poziționată
z-index - Setează ordinea stivei unui element

CSS Overflow

Proprietatea CSS overflow controlează ce se întâmplă cu conținutul prea mare pentru a se încadra într-o zonă.
CSS Overflow
Proprietatea de overflow specifică dacă trebuie să decupați conținutul sau să adăugați bare de defilare atunci când conținutul unui element este prea mare pentru a se încadra în zona specificată.
Proprietatea de overflow are următoarele valori:
visible (vizibil) - implicit. Depășirea nu este tăiată. Conținutul este redat în afara casetei elementului.
hidden (ascuns) - preaplinul este tăiat, iar restul conținutului va fi invizibil.
scroll (defilare) - overflow-ul este tăiat și este adăugată o bară de defilare pentru a vedea restul conținutului.
auto - Similar cu defilarea, dar adaugă bare de defilare doar atunci când este necesar.
Elementul overflow: visible (revărsat: vizibil)
În mod implicit, revărsarea este vizibilă (overflow: visible), ceea ce înseamnă că nu este tăiată și se redă în afara casetei elementului.
Elementul overflow: hidden (revărsat: ascuns)
Odată cu valoarea ascunsă (overflow: hidden), preluarea este tăiată, iar restul conținutului este ascuns.
Elementul overflow: scroll (revărsat: defilare)
Setând valoarea pentru a derula (overflow: scroll), revărsarea este decupată și este adăugată o bară de defilare pentru a derula în interiorul casetei. Rețineți că aceasta va adăuga o bară de defilare atât pe orizontală cât și pe verticală (chiar dacă nu aveți nevoie de ea).
Elementele overflow-x și overflow-y
Proprietățiile de overflow-x și overflow specifică dacă trebuie să schimbe overflow-ul de conținut doar orizontal sau și vertical (sau ambele):
overflow-x specifică ce trebuie făcut cu marginile stânga / dreapta ale conținutului.
overflow-y specifică ce trebuie făcut cu marginile de sus / de jos ale conținutului.
Toate proprietățiile CSS  de overflow:
overflow - Specifică ce se întâmplă dacă conținutul revărsă caseta unui element.
overflow-x - Specifică ce se poate face cu marginile stânga / dreapta ale conținutului dacă acesta revărsă zona de conținut a elementului.
overflow-y - Specifică ce trebuie făcut cu marginile de sus / de jos ale conținutului dacă acesta revărsă zona de conținut a elementului.

CSS Float

Proprietatea CSS float  specifică modul în care un element ar trebui să plutească (float).
Proprietatea CSS clear specifică ce elemente pot pluti  (float) lângă elementul șters și pe ce parte.
Proprietatea float
Proprietatea float este utilizată pentru poziționarea și formatarea conținutului, de ex. lăsați o imagine să plutească stânga spre text într-un container.
Proprietatea float poate avea una dintre următoarele valori:
left (stânga) - Elementul plutește în stânga containerului său.
right (dreapta) - Elementul plutește în dreapta containerului său.
none - Elementul nu plutește (va fi afișat acolo unde apare în text). Aceasta este implicită.
inherit (mostenire) - elementul moștenește valoarea float a părintelui său.
În cea mai simplă utilizare, proprietatea float poate fi utilizată pentru a înfășura text în jurul imaginilor.
Elementul float: right; (float: dreapta;).
Elementul float: left; (float: stânga;).
Elementul float: none;. 
Proprietatea clear
Proprietatea clear specifică ce elemente pot pluti (float) lângă elementul șters și pe ce parte.
Proprietatea clear poate avea una dintre următoarele valori:
none - Permite elemente plutitoare de ambele părți. Aceasta este implicită.
left (stânga) - Nu sunt permise elemente plutitoare în partea stângă.
right (dreapta) - Nu sunt permise elemente plutitoare în partea dreaptă.
both (ambele) - Nu sunt permise elemente plutitoare nici pe partea stângă, fie pe partea dreaptă.
inherit (mostenirea) - Elementul mosteneste valoarea clara a parintelui său.
Cel mai obișnuit mod de a utiliza proprietatea clear este după ce ați utilizat o proprietate float pe un element.
Când ștergeți floats, ar trebui să potriviți clear cu float: Dacă un element este float la stânga, atunci ar trebui să ștergeți la stânga. Elementul float va continua să plutească, dar elementul șters va apărea sub el pe pagina web.
The clearfix Hack
Dacă un element este mai înalt decât elementul care îl conține și este float, acesta se va „overflow” în afara containerului său.
overflow: auto clearfix  funcționează bine atâta timp cât sunteți în stare să păstrați controlul asupra margin-ului și a padding-ului (altfel puteți vedea bare de defilare). Totuși, noul clearfix hack however este mai sigur de utilizat și următorul cod este folosit pentru majoritatea paginilor web.
Grid of Boxes / Equal Width Boxes
Ce este box-sizing?
Puteți crea cu ușurință trei cutii plutitoare (floating boxes) una lângă alta. Cu toate acestea, când adăugați ceva care mărește lățimea fiecărei cutii (de exemplu, padding sau borders), caseta se va rupe. Proprietatea de dimensionare a cutiei ne permite să includem padding și border în lățimea totală (și înălțimea) a cutiei, asigurându-ne că padding rămâne în interiorul cutiei și că nu se rupe.
Grila casetelor poate fi de asemenea folosită pentru a afișa imagini side by side:
Cutii de înălțime egală (Equal Height Boxes)
Este bine dacă puteți garanta că casetele vor avea întotdeauna aceeași cantitate de conținut în ele. Dar de multe ori, conținutul nu este același. Dacă încercați exemplul de mai sus pe un telefon mobil, veți vedea că conținutul celei de-a doua cutii va fi afișat în afara casetei. Acesta este locul în care CSS3 Flexbox vine la îndemână - deoarece poate întinde automat cutiile pentru a fi la fel de lungă ca cea mai lungă casetă:
Flexbox nu este acceptat în Internet Explorer 10 sau în versiunile anterioare.
Meniu de navigatie (Navigation Menu)
Utilizați float cu o listă de hyperlinkuri pentru a crea un meniu orizontal.
Exemplu de dispunere web (Web Layout Example)
Este, de asemenea, obișnuit să faceți web layouts folosind proprietatea float.
Toate proprietățiile CSS float.
box-sizing Defineste modul în care se calculează lățimea și înălțimea unui element: trebuie să includă sau nu borduri
clear Specifica ce elemente pot pluti lângă elementul șters și pe ce parte
float Specifică modul în care un element trebuie să plutească
overflow Specifică ce se întâmplă dacă conținutul revărsă caseta unui element
overflow-x Specifică ce se poate face cu marginile stânga / dreapta ale conținutului dacă acesta revărsă zona de conținut a elementului
overflow-y Specifică ce trebuie făcut cu marginile de sus / de jos ale conținutului dacă acesta revărsă zona de conținut a elementului

CSS Align

CSS Layout - Aliniere orizontală și verticală
Elemente de aliniere de centru
Pentru a centra orizontal un element de block (cum ar fi <div>), utilizați margin: auto;
Setarea lățimii elementului îl va împiedica să se întindă până la marginile containerului său.
Elementul va prelua apoi lățimea specificată, iar spațiul rămas va fi împărțit în mod egal între cele două margini.
Notă: Alinierea la centru nu are efect dacă proprietatea lățimii nu este setată (sau setată la 100%).
Centrare aliniere text (Center Align Text)
Pentru a centra doar textul în interiorul unui element, utilizați text-align: center;
Centrați o imagine
Pentru a centra o imagine, setați marginea stângă și dreaptă pe auto și transformați-o într-un element block.
Aliniere stânga și dreapta - Folosire position
O metodă de aliniere a elementelor este utilizarea position: absolut ;:
Aliniere stânga și dreapta - Folosire float
O altă metodă pentru alinierea elementelor este utilizarea proprietății float.
Dacă un element este mai înalt decât elementul care îl conține și este float, acesta se va revărsa (overflow) în afara containerului său. Puteți utiliza hackul „clearfix” pentru a remedia acest lucru (a se vedea exemplul de mai jos).
The clearfix Hack
Putem adăuga overflow: auto; la elementul conținut pentru a remedia această problemă.
Centrare vertical - Folosire padding
Există multe moduri de a centra un element pe verticală în CSS. O soluție simplă este utilizarea paddingu-ului de sus și de jos.
Centru vertical - Folosire line-height
Un alt truc este să folosiți proprietatea line-height cu o valoare egală cu proprietatea height.
Centru vertical - Folosire position și transform
Dacă padding și line-height nu sunt opțiuni, o a treia soluție este utilizarea poziționării și a proprietății de transformare.

CSS Opacitate / Transparență

Proprietatea opacity specifică opacitatea / transparența unui element.
Imagine transparentă
Proprietatea opacity poate lua o valoare între 0,0 și 1,0. Cu cât valoarea este mai mică, cu atât mai transparentă.
IE8 și utilizarea anterioară filter:alpha(opacity=x). X poate lua o valoare de la 0 la 100. O valoare mai mică face ca elementul să fie mai transparent.
Efectul Hover transparent
Proprietatea de opacitate este adesea folosită împreună cu: hover selector pentru a modifica opacitatea cu mouse-over.
Transparent Box
Când se utilizează proprietatea opacity pentru a adăuga transparență pe fundalul unui element, toate elementele sale copil moștenesc aceeași transparență. Acest lucru poate face textul într-un element complet transparent, greu de citit.
Transparență folosind RGBA
Dacă nu doriți să aplicați opacitate elementelor copil, folosiți valorile de culoare RGBA.
Ați aflat de la capitolul nostru de culori CSS, că puteți utiliza RGB ca valoare a culorii. În plus față de RGB, puteți utiliza o valoare a culorii RGB cu un canal alfa (RGBA) - care specifică opacitatea unei culori.
O valoare de culoare RGBA este specificată cu: rgba (roșu, verde, albastru, alfa). Parametrul alfa este un număr între 0,0 (complet transparent) și 1,0 (complet opac).
Text în Transparent Box.

CSS Bară de navigare

Bare de navigare
Navigarea ușor de utilizat este importantă pentru orice site web.
Cu CSS puteți transforma meniuri HTML plictisitoare în bare de navigare cu aspect bun.
Bară de navigare = Lista de legături
O bară de navigare are nevoie de HTML standard ca bază.
Bară de navigare dintr-o listă HTML standard.
O bară de navigare este practic o listă de legături, astfel încât utilizarea elementelor <ul> și <li> are sens perfect.
Link de navigare activ / curent
Adăugați o clasă „activă” la link-ul curent pentru a anunța utilizatorul pe ce pagină se află.
Link-uri centrate & adăugare borders
Adăugați text-align: center la <li> sau <a> pentru a centra legăturile.
Adăugați proprietatea border la <ul> Adăugați un border în jurul barei de navigare. Dacă doriți, de asemenea, borders în interiorul barei de navigare, adăugați un border-bottom la toate elementele <li>, cu excepția ultimului.
Full-height Fixed Vertical Navbar
Bară de navigare orizontală
Există două moduri de a crea o bară de navigare orizontală. Utilizarea elementelor din linie interioară sau flotantă.
Articole de listă inline
O modalitate de a construi o bară de navigare orizontală este de a specifica elementele <li> ca inline, pe lângă codul „standard” de mai sus.
display: inline; - În mod implicit, elementele <li> sunt elemente de tip block. Aici, eliminăm pauzele de linie înainte și după fiecare articol din listă, pentru a le afișa pe o singură linie.
Floating List Items
Un alt mod de a crea o bară de navigare orizontală este să float elementele <li> și să specifici un layout pentru link-urile de navigare.
Link de navigare activ / curent
Adăugați o clasă „active” la link-ul curent pentru a anunța utilizatorul pe ce pagină se află.
Link-uri aliniere dreapta (Right-align links)
Aliniați legăturile din dreapta, plutind elementele din listă spre dreapta (float: right;):
Border Dividers
Adăugați proprietatea border-right la <li> pentru a crea divizori de legături.
Fixed Navigation Bar
Faceți ca bara de navigare să rămână în partea de sus sau de jos a paginii, chiar și atunci când utilizatorul derulează pagina.
Fixed Top
Fixed Bottom
Bară orizontală gri
Sticky Navbar
Adăugați position: sticky; la <ul> pentru a crea sticky navbar.
Un element sticky trece între relativ și fix, în funcție de poziția de defilare. Este poziționat relativ până când o poziție dată de offset este întâlnită în viewport - apoi se „lipeste”la loc (ca position:fixed).
Internet Explorer, Edge 15 și versiunile anterioare nu acceptă poziționarea sticky. Safari necesită un prefix -webkit- (vezi exemplul de mai sus). De asemenea, trebuie să specificați cel puțin una de sus, dreapta, jos sau stânga pentru ca poziționarea sticky să funcționeze.
Responsive Topnav
Cum să utilizați interogări media CSS pentru a crea o navigare de sus.
Responsive Sidenav
Cum să utilizați interogări media CSS pentru a crea o navigare receptivă.
Dropdown Navbar
Cum să adăugați un meniu derulant într-o bară de navigare.

CSS Dropdowns

Basic Dropdown
Creați un dropdown box care apare când utilizatorul mută mouse-ul peste un element.
HTML) Utilizați orice element pentru a deschide conținutul dropdown, de ex. un element <span> sau un <button>.
Utilizați un element de container (cum ar fi <div>) pentru a crea conținut dropdown și adăugați orice doriți în interiorul acestuia.
Înfășurați un element <div> în jurul elementelor pentru a poziționa corect conținutul dropdown cu CSS.
CSS) Clasa .dropdown folosește position:relative, care este necesară atunci când dorim ca conținutul dropdown să fie plasat chiar sub butonul dropdown (folosind position:absolute).
Clasa .dropdown-content conține conținutul dropdown real. Este ascunsă în mod implicit și va fi afișată pe hover (vezi mai jos). Rețineți că min-width este setată la 160px. Simte-te liber să schimbi asta.
Dacă doriți ca lățimea conținutului dropdown să fie la fel de largă ca butonul dropdown, setați lățimea (width) la 100% (și overflow:auto pentru a activa defilarea pe ecrane mici).
În loc să folosim un border, am folosit proprietatea CSS box-shadow pentru a face ca meniul dropdown să arate ca un „card”.
Selectorul :hover este folosit pentru a afișa meniul dropdown atunci când utilizatorul mută mouse-ul peste butonul dropdown.
Dropdown Menu
Meniu dropdown care permite utilizatorului să aleagă o opțiune dintr-o listă.
Conținut dropdown aliniat la dreapta (Right-aligned Dropdown Content)
Dacă doriți ca meniul dropdown să meargă de la dreapta la stânga, în loc de la stânga la dreapta, adăugați right: 0;.
Imagine Dropdown
Cum să adăugați o imagine și alt conținut în dropdown box.
Dropdown Navbar
Cum să adăugați un meniu dropdown într-o bară de navigare.

CSS Galerie de imagini

CSS poate fi utilizat pentru a crea o galerie de imagini.

 

CSS Image Sprites

Image Sprites
Un image sprite este o colecție de imagini puse într-o singură imagine.
O pagină web cu multe imagini poate dura mult timp pentru a se încărca și generează mai multe solicitări de server.
Utilizarea image sprite-urilor va reduce numărul de solicitări de server și va economisi lățimea de bandă.
Cu CSS, putem afișa doar partea din imagine de care avem nevoie.
<img id = "home" src = "img_trans.gif"> - Definește doar o imagine transparentă mică, deoarece atributul src nu poate fi gol. Imaginea afișată va fi imaginea de fundal pe care o specificăm în CSS.
width: 46px; height: 44px; - Definește portiunea imaginii pe care dorim sa o folosim.
background: url(img_navsprites.gif) 0 0; - Definește imaginea de fundal și poziția acesteia (left 0px, top 0px).
Acesta este cel mai simplu mod de a utiliza image sprites, acum dorim să-l extindem folosind link-uri și efectele hover.
Image Sprites - Creați o listă de navigare
Imaginea sprite ("img_navsprites.gif") pentru a crea o listă de navigare.
Listă HTML, deoarece poate fi o legătură și acceptă și o imagine de fundal.
#navlist {position: relative;} - poziția este setată pe relativ pentru a permite poziționarea absolută în interiorul ei.
#navlist li {margin:0;padding:0;list-style:none;position:absolute;top:0;} - margin și padding sunt setate la 0, stilul listei este eliminat și toate elementele din listă sunt poziționate în mod absolut.
#navlist li, #navlist a {height:44px;display:block;} - înălțimea tuturor imaginilor este 44px.

Acum începe să poziționezi și stilul pentru fiecare parte specifică:

#home {left:0px;width:46px;} - poziționat până la stânga, iar lățimea imaginii este 46px.
#home {background:url(img_navsprites.gif) 0 0;} - definește imaginea de fundal și poziția acesteia (left 0px, top 0px)
#prev {left:63px;width:43px;} - poziționat 63px la dreapta (#home width 46px + puțin spațiu suplimentar între elemente), iar width este de 43px.
#prev {background:url('img_navsprites.gif') -47px 0;} - defineste imaginea de fundal 47px la dreapta (#home width 46px + 1px divisor de linie)
#next {left:129px;width:43px;} - poziționat 129px la dreapta (începutul #prev este 63px + #prev lățime 43px + spațiu suplimentar), iar lățimea este 43px.
#next {background:url('img_navsprites.gif') -91px 0;} - defineste imaginea de fundal 91px la dreapta (#home width 46px + 1px line diviser + #prev width 43px + 1px divisor line).
Image Sprites - Hover Effect
Adăugăm un efect hover în lista noastră de navigare.
Selectorul :hover poate fi utilizat pe toate elementele, nu numai pe linkuri.
("img_navsprites_hover.gif") conține trei imagini de navigare și trei imagini pe care să le utilizăm pentru efectele hover.
Deoarece este vorba de o singură imagine și nu de șase fișiere separate, nu va exista nicio întârziere de încărcare atunci când un utilizator trece peste imagine.
Adăugăm doar trei linii de cod pentru a adăuga efectul de hover.
#home a:hover {background: transparent url('img_navsprites_hover.gif') 0 -45px;} - Pentru toate cele trei imagini pasive, specificăm aceeași poziție de fundal, doar 45px mai jos.

CSS Formulare

Formulare CSS
Aspectul unui formular HTML poate fi îmbunătățit mult cu CSS.
Stilizarea câmpurilor de intrare (Styling Input Fields)
Utilizați proprietatea width pentru a determina lățimea câmpului de intrare (input field).
Dacă doriți să stilați un tip de intrare specific, puteți utiliza selectori de atribute:
input [type=text] - va selecta doar câmpurile de tip text
input [type=password] - va selecta doar câmpuri de tip parolă
input [type=number] - va selecta doar câmpuri numerice
Padded Inputs
Utilizați proprietatea padding pentru a adăuga spațiu în câmpul text.
Când aveți multe intrări una după cealaltă, este posibil să doriți să adăugați și o anumită marjă (margin), pentru a adăuga mai mult spațiu în afara lor.
Bordered Inputs
Utilizați proprietatea border pentru a modifica dimensiunea și culoarea border-ului și utilizați proprietatea border-radius pentru a adăuga colțuri rotunjite(corners rounded).
Dacă doriți doar un bottom border, utilizați proprietatea border-bottom.
Colored Inputs
Utilizați proprietatea background-color pentru a adăuga o culoare de fundal la intrare și proprietatea color pentru a schimba culoarea textului.
Focused Inputs
În mod implicit, unele browsere vor adăuga un contur (outline) albastru în jurul intrării atunci când va fi focalizat (faceți click pe). Puteți elimina acest comportament adăugând outline: none; la intrare.
Utilizați selectorul :focus pentru a face ceva cu câmpul de introducere atunci când este focalizat.
Intrare cu pictogramă / imagine(Input with icon/image)
Dacă doriți o pictogramă (icon) în interiorul intrării, utilizați proprietatea background-image și poziționați-o cu proprietatea background-position. Rețineți, de asemenea, că adăugăm un left padding mare pentru a rezerva spațiul pictogramei (icon).
Intrare de căutare animată(Animated Search Input)
În acest exemplu, utilizăm proprietatea CSS transition pentru a anima lățimea (width) intrării de căutare atunci când devine focus. 
Styling Textareas
Utilizați proprietatea resize pentru a împiedica redimensionarea textului (dezactivați „grabber” din colțul din dreapta jos):
Styling Select Menus
Stilizarea butoanelor de intrare(Styling Input Buttons)
Formular responsiv(Responsive Form)
Redimensionați fereastra browserului pentru a vedea efectul. Când ecranul are o lățime mai mică de 600px, faceți ca cele două coloane să se stivească una peste alta, în loc de una lângă alta.
Interogări media pentru a crea un formular cu răspuns.

CSS Website Layout

Website Layout
Un site web este adesea împărțit în anteturi, meniuri, conținut și un subsol(headers, menus, content și footer).
Antet (Header)
Un antet este de obicei situat în partea de sus a site-ului web (sau chiar sub un meniu de navigare de sus). Adesea conține un logo sau numele site-ului.
Bară de navigare (Navigation Bar)
O bară de navigare conține o listă de link-uri pentru a ajuta vizitatorii care navighează pe site-ul dvs. web.
Conţinut (Content)
Aspectul din această secțiune depinde adesea de utilizatorii vizați. Cea mai comună dispunere este una (sau combinarea lor) dintre următoarele:
1-column - (adesea folosit pentru browserele mobile)
2-column - (adesea folosit pentru tablete și laptopuri)
3-column layout  - (utilizată doar pentru desktopuri)
Coloane inegale (Unequal Columns)
Conținutul principal este cea mai mare și cea mai importantă parte a site-ului dvs.
Este comună cu lățimile inegale ale coloanei, astfel încât cea mai mare parte a spațiului este rezervată conținutului principal. Conținutul lateral (dacă există) este adesea folosit ca o navigare alternativă sau pentru a specifica informații relevante pentru conținutul principal. Modificați lățimile după cum doriți, amintiți-vă doar că ar trebui să adauge până la 100% în total.
Subsol (Footer)
Subsolul este plasat în partea de jos a paginii. Adesea conține informații precum copyright și informații de contact.
Responsive Website Layout
Folosind o parte din codul CSS de mai sus, putem crea un site web responsiv, care variază între două coloane și coloane cu lățime completă, în funcție de lățimea ecranului.

CSS Unități

Unități CSS
CSS are mai multe unități diferite pentru exprimarea unei lungimi.
Multe proprietăți CSS iau valori „de lungime” (lenght), cum ar fi lățimea, marja, căptușirea, dimensiunea fontului etc (width, margin, padding, font-size).
Lungimea este un număr urmat de o unitate de lungime, cum ar fi 10px, 2em etc.
Un whitespace nu poate apărea între număr și unitate. Cu toate acestea, dacă valoarea este 0, unitatea poate fi omisă.
Pentru unele proprietăți CSS, lungimile negative sunt permise.
Există două tipuri de unități de lungime: absolută și relativă.
Lungimi absolute (Absolute Lengths)
Unitățile de lungime absolută sunt fixe și o lungime exprimată în oricare dintre acestea va apărea exact ca acea dimensiune.
Unitățile de lungime absolută nu sunt recomandate pentru utilizare pe ecran, deoarece dimensiunile ecranului diferă atât de mult. Cu toate acestea, pot fi utilizate dacă este cunoscut suportul de ieșire, cum ar fi pentru aspectul tipăririi.
cm  -   centimetri
mm -   millimetri
in  -  inci (1in = 96px = 2.54cm)
px *  -  pixeli (1px = 1/96th of 1in)
pt  -  puncte (1pt = 1/72 of 1in)
pc  -  picas (1pc = 12 pt)
* Pixelii (px) sunt în raport cu dispozitivul de vizualizare. Pentru dispozitivele cu valoare redusă, 1px este un pixel de dispozitiv (punct) al afișajului. Pentru imprimante și ecrane de înaltă rezoluție, 1px implică mai mulți pixeli de dispozitiv.
Lungimi relative (Relative Lengths)
Unitățile de lungime relativă specifică o lungime relativă la o altă proprietate lungime. Unitățile de lungime relativă scalează mai bine între diferite medii de redare.
em - În raport cu dimensiunea fontului elementului (2em înseamnă de 2 ori dimensiunea fontului curent)
ex - În raport cu înălțimea x a fontului curent (rar folosit)
ch - În raport cu lățimea "0" (zero)
rem - Relativ la dimensiunea fontului elementului rădăcină
vw - În raport cu 1% din lățimea afișajului *
vh - În raport cu 1% din înălțimea viewport *
vmin - În raport cu 1% din dimensiunea mai mică a portofoliului *
vmax - În raport cu 1% din dimensiunea mai mare a portofoliului
% - În raport cu elementul părinte
Unitățile em și rem sunt practice în crearea unui aspect scalabil perfect!
* Viewport = dimensiunea ferestrei browserului. Dacă viewport are 50cm lățime, 1vw = 0,5cm.
Asistență browser (Browser Support)
Numerele din tabel specifică prima versiune a browserului care acceptă integral unitatea de lungime.

CSS Colțuri rotunjite

CSS Colțuri rotunjite
Cu proprietatea CSS border-radius, puteți da oricărui element "colțuri rotunjite" (rounded corners).
Proprietate CSS border-radius
Proprietatea CSS border-radius definește raza colțurilor unui element.
Această proprietate vă permite să adăugați colțuri rotunjite la elemente!
Colțuri rotunjite (rounded corners) pentru un element cu o culoare de fundal specificată.
Colțuri rotunjite (rounded corners) pentru un element cu bordură.
Colțuri rotunjite (rounded corners) pentru un element cu o imagine de fundal.
Proprietatea „border-radius” este de fapt o proprietate de tip shorthand pentru proprietățiile border-top-left-radius, border-top-right-radius, border-bottom-right-radius și border-bottom-left-radius.
CSS border-radius - Specificați fiecare colț
Proprietatea border-radius poate avea de la una până la patru valori.
Patru valori - border-radius: 15px 50px 30px 5px; (prima valoare se aplică colțului din stânga sus(top-left corner), a doua valoare se aplică colțului din dreapta sus(top-right corner), a treia valoare se aplică colțului din dreapta jos(bottom-right corner) și a patra valoare se aplică colțului din stânga jos(bottom-left corner)).
Trei valori - border-radius: 15px 50px 30px; (prima valoare se aplică colțului din stânga sus(top-left corner), a doua valoare se aplică colțurilor din dreapta sus și din stânga jos(top-right și bottom-left corners) și a treia valoare se aplică colțului din dreapta jos(bottom-right corner)).
Două valori - border-radius: 15px 50px; (prima valoare se aplică colțurilor din stânga sus și din dreapta jos(top-left și bottom-right corners), iar a doua valoare se aplică colțurilor din dreapta sus și din stânga jos(top-right și bottom-left corners)).
O valoare - border-radius: 15px; (valoarea se aplică la toate cele patru colțuri, care sunt rotunjite în mod egal).
Proprietăți CSS Rounded Corners
border-radius O proprietate shorthand pentru setarea tuturor celor patru chenare - * - * - proprietăți radius.
border-top-left-radius Definește forma marginii din colțul din stânga sus.
border-top-right-radius Definește forma marginii din colțul din dreapta sus.
border-bottom-right-radius Definește forma marginii din colțul din dreapta jos.
border-bottom-left-radius Definește forma marginii din colțul din stânga jos.

CSS Border Images

CSS Border Images
Cu proprietatea CSS border-image, puteți seta o imagine care să fie utilizată ca border în jurul unui element.
Proprietatea CSS border-image
Proprietatea CSS border-image vă permite să specificați o imagine care trebuie utilizată în loc de bordura normală din jurul unui element.
Proprietatea are trei părți:
Imaginea utilizată ca border.
Unde să tăiați imaginea.
Definiți dacă secțiunile din mijloc trebuie repetate sau întinse.
Proprietatea border-image ia imaginea și o taie în nouă secțiuni, precum o placă tic-tac-toe. Apoi plasează colțurile la colțuri, iar secțiunile din mijloc sunt repetate sau întinse după cum specificați.
Pentru ca border-image să funcționeze, elementul are nevoie și de setul de proprietăți border!
Secțiunile din mijloc ale imaginii sunt repetate pentru a crea border.
Secțiunile din mijloc ale imaginii sunt întinse pentru a crea border.
Proprietatea border-image este de fapt o proprietate de tip shorthand pentru proprietățile border-image-source, border-image-slice, border-image-width, border-image-outset și border-image-repeat.
CSS border-image - Different Slice Values
Different slice values schimbă complet aspectul border-ului.
Proprietățiile CSS Border Image
border-image - O proprietate shorthand pentru setarea tuturor proprietăților border-image- *.
border-image-source - Specifică calea către imaginea care va fi utilizată ca border.
border-image-slice - Specifică modul de tăiere a border image.
border-image-width - Specifică lățimile pentru border image.
border-image-outset - Specifică cantitatea prin care se extinde zona border image dincolo de border box.
border-image-repeat - Specifică dacă border image trebuie repetată, rotunjită sau întinsă.

CSS Fundaluri multiple

În acest capitol veți învăța cum să adăugați mai multe imagini de fundal la un element.
Proprietățiile background-size, background-origin, background-clip.
CSS vă permite să adăugați mai multe imagini de fundal pentru un element, prin proprietatea background-image.
Diferitele imagini de fundal sunt separate prin virgule, iar imaginile sunt stivuite una peste alta, unde prima imagine este cea mai apropiată de privitor.
Mai multe imagini de fundal pot fi specificate utilizând fie proprietățiile de fundal individuale (ca mai sus), fie proprietatea background shorthand.
CSS Background Size
Proprietatea CSS background-size vă permite să specificați dimensiunea imaginilor de fundal.
Mărimea poate fi specificată în lungimi, procente (lengths, percentages) sau utilizând unul dintre cele două cuvinte cheie: conține sau acoperire(contain sau cover).
Redimensionare background image la o dimensiune mult mai mică decât imaginea originală (folosind pixeli).
Celelalte două valori posibile pentru background-size sunt contain și cover.
Cuvântul cheie contain scalează imaginea de fundal (scales the background image) pentru a fi cât mai mare (dar atât lățimea cât și înălțimea sa trebuie să se încadreze în zona conținutului). Ca atare, în funcție de proporțiile imaginii de fundal (background image) și de zona de poziționare a fundalului, pot exista anumite zone ale fundalului care nu sunt acoperite de imaginea de fundal (background image).
Cuvântul cheie cover scalează imaginea de fundal (scales the background image) astfel încât zona de conținut să fie acoperită complet de imaginea de fundal (background image) (atât lățimea cât și înălțimea acesteia sunt egale sau depășesc aria conținutului). Ca atare, este posibil ca unele părți ale imaginii de fundal (background image) să nu fie vizibile în zona de poziționare a fundalului.
Definirea dimensiunilor mai multor imagini de fundal (Define Sizes of Multiple Background Images)
Proprietatea background-size acceptă, de asemenea, mai multe valori pentru dimensiunea fundalului (folosind o listă separată de virgule), atunci când lucrați cu mai multe fundaluri.
Full Size Background Image
Acum vrem să avem o imagine de fundal (background image) pe un site web care să acopere întreaga fereastră a browserului în orice moment.
Cerințele sunt următoarele:
Completează întreaga pagină cu imaginea (fără spațiu alb).
Scalați imaginea după caz.
Centrați imaginea pe pagina.
Nu provocați bare de defilare (scrollbars).
Hero Image
De asemenea, puteți utiliza diferite proprietăți de fundal (background) pe un <div> pentru a crea hero image (o imagine mare cu text) și să o plasați acolo unde doriți.
Proprietatea CSS background-origin
Proprietatea CSS background-origin specifică unde este poziționată imaginea de fundal.
Proprietatea are trei valori diferite:
border-box - imaginea de fundal pornește din colțul din stânga sus al border-ului.
padding-box - (implicit) imaginea de fundal pornește din colțul din stânga sus al marginii padding-ului.
content-box - imaginea de fundal pornește din colțul din stânga sus al conținutului.
Proprietatea CSS background-clip
Proprietatea CSS background-clip specifică zona de pictură a fundalului.
Proprietatea are trei valori diferite:
border-box - (implicit) fundalul este pictat pe marginea exterioară a border-ului.
padding-box - fundalul este vopsit până la marginea exterioară a padding-ului.
content-box - fundalul este pictat în caseta de conținut.
Proprietăți CSS background avansate:
background - O proprietate shorthand pentru setarea tuturor proprietăților de fundal într-o singură declarație
background-clip - Specifică zona de pictură a fundalului
background-image - Specifică una sau mai multe imagini de fundal pentru un element
background-origin - Specifică unde este / sunt poziționate imaginile de fundal
background-size - Specifică dimensiunea imaginii de fundal

CSS Culori

Culori CSS
CSS acceptă 140+ nume de culoare, valori HEX, valori RGB, valori RGBA, valori HSL, valori HSLA și opacitate.
Culori RGBA
Valorile de culoare RGBA sunt o extensie a valorilor de culoare RGB cu un canal alfa - care specifică opacitatea unei culori.
O valoare de culoare RGBA este specificată cu: rgba (roșu, verde, albastru, alfa)/rgba(red, green, blue, alpha). Parametrul alfa este un număr între 0,0 (complet transparent) și 1,0 (complet opac).
HSL Colors
HSL înseamnă Hue, Saturation and Lightness.
O valoare de culoare HSL este specificată cu: hsl(hue, saturation, lightness).
Hue este un grad pe roata de culoare (de la 0 la 360):
0 (sau 360) este roșu
120 este verde
240 este albastru
Saturation este o valoare procentuală: 100% este culoarea completă.
Lightness este, de asemenea, un procent; 0% este întunecat (negru) și 100% alb.
Culorile HSLA
Valorile de culoare HSLA sunt o extensie a valorilor de culoare HSL cu un canal alfa - care specifică opacitatea unei culori.
O valoare de culoare HSLA este specificată cu: hsla(hue, saturation, lightness, alpha), unde parametrul alfa definește opacitatea. Parametrul alfa este un număr între 0,0 (complet transparent) și 1,0 (complet opac).
Opacitate
Proprietatea CSS opacity stabilește opacitatea pentru întregul element (atât culoarea de fundal, cât și textul vor fi opace / transparente).
Valoarea proprietății de opacitate trebuie să fie un număr între 0,0 (complet transparent) și 1,0 (complet opac).

CSS Gradienți

Gradienți CSS
Gradienții CSS vă permit să afișați tranziții netede între două sau mai multe culori specificate.
CSS definește două tipuri de gradienți:
Gradienți liniari/Linear Gradients (coboară / în sus / stânga / dreapta / în diagonală)
Gradienți radiali/Radial Gradients (definiți de centrul lor)
Gradienți liniari CSS
Pentru a crea un gradient liniar trebuie să definiți cel puțin două opriri de culoare (color stops). Oprirea culorilor (color stops) se referă la culorile dintre care doriți să faceți tranziții netede. Puteți seta, de asemenea, un punct de plecare și o direcție (sau un unghi) împreună cu efectul de gradient.
Gradient liniar - de sus în jos (aceasta este implicit)
Gradient liniar care începe de sus. Începe roșu, iar trecerea se face la galben
Gradient liniar - de la stânga la dreapta (Linear Gradient - Left to Right)
Gradient liniar care pornește de la stânga. Începe roșu, trecerea se face la galben.
Gradient liniar - diagonală (Linear Gradient - Diagonal)
Puteți face un gradient în diagonală specificând atât pozițiile de pornire orizontale, cât și cele verticale.
Gradient liniar care începe în stânga sus (și merge spre dreapta jos). Începe roșu, trecerea se face la galben.
Utilizarea unghiurilor (Using Angles)
Dacă doriți un control mai mare asupra direcției gradientului, puteți defini un unghi, în loc de direcțiile predefinite (în jos, în sus, în dreapta, în stânga, în dreapta jos etc.).
Unghiul este specificat ca un unghi între o linie orizontală și linia de gradient.
Modul de utilizare a unghiurilor pe gradienți liniari.
Folosirea mai multor opriri de culori (Using Multiple Color Stops)
Un gradient liniar (de sus în jos) cu mai multe opriri de culoare(multiple color stops).
Un gradient liniar (de la stânga la dreapta) cu culoarea curcubeului și cu un text.
Utilizarea transparenței (Using Transparency)
De asemenea, gradienții CSS acceptă transparența, care poate fi utilizată pentru a crea efecte de decolorare.
Pentru a adăuga transparență, folosim funcția rgba() pentru a defini oprirea culorii (color stops). Ultimul parametru din funcția rgba () poate fi o valoare de la 0 la 1 și definește transparența culorii: 0 indică transparență completă, 1 indică culoarea completă (fără transparență).
Un gradient liniar care pornește de la stânga. Începe complet transparent, trecând la roșu complet.
Repetarea unui gradient liniar (Repeating a linear-gradient)
Funcția repeating-linear-gradient() este utilizată pentru a repeta gradienți liniari:
Gradienți radiali CSS (CSS Radial Gradients)
Un gradient radial este definit de centrul său.
Pentru a crea un gradient radial trebuie să definiți, de asemenea, cel puțin două opriri de culoare (color stops).
În mod implicit, forma este de elipsă, dimensiunea este cea mai îndepărtată de colț, iar poziția este centrală.
Gradient radial - Opriri uniforme ale culorilor/ Radial Gradient - Evenly Spaced Color Stops  (aceasta este implicită)
Un gradient radial cu opriri uniforme de culoare distanțate.
Gradient radial - Opriri de culori distanțate diferit / Radial Gradient - Differently Spaced Color Stops
Un gradient radial cu opriri de culoare distanțate diferit.
Setați forma (Set Shape)
Parametrul shape definește forma. Poate lua cercul de valori sau elipsa. Valoarea implicită este elipsa.
Un gradient radial sub forma unui cerc.
Utilizarea cuvintelor cheie de dimensiuni diferite (Use of Different Size Keywords)
Parametrul size definește dimensiunea gradientului. Poate lua patru valori: closest-side, farthest-side, closest-corner, farthest-corner.
Un gradient radial cu cuvinte cheie de dimensiuni diferite.
Repetarea unui gradient radial (Repeating a radial-gradient)
Funcția repeating-radial-gradient() este utilizată pentru a repeta gradienți radiali.
Proprietăți CSS pentru gradient
background-image - Setează una sau mai multe imagini de fundal pentru un element.

CSS Efecte de umbră

Efecte de umbră CSS
Cu CSS puteți adăuga umbră textului și elementelor.
Proprietăți: text-shadow, box-shadow.
Umbre multiple (Multiple Shadows)
Pentru a adăuga mai mult de o umbră textului, puteți adăuga o listă de umbre separate de virgule.
Umbră de strălucire neon roșu și albastru.
Text alb cu umbra neagră, albastră și albastru închis
Puteți utiliza, de asemenea, proprietatea text-shadow pentru a crea un chenar simplu în jurul unui text (fără umbre)
Proprietatea CSS box-shadow
Proprietatea CSS box-shadow aplică umbre pentru elemente.
În cea mai simplă utilizare, specificați doar umbra orizontală și umbra verticală.
Apoi, adăugați o culoare la umbră.
Apoi, adăugați un efect de estompare la umbră.
Puteți adăuga, de asemenea, umbre la pseudo-elemente ::before și ::after pentru a crea un efect interesant.
Cards
Un exemplu de utilizare a proprietății box-shadow pentru a crea paper-like cards.
Proprietăți CSS Shadow
box-shadow - Adaugă una sau mai multe umbre la un element.
text-shadow - Adăugă una sau mai multe umbre la un text.

CSS Efecte de text

CSS Text Overflow, Word Wrap, Line Breaking Rules și Writing Modes
Proprietăți: text-overflow, word-wrap, word-break, writing-mode
CSS Text Overflow
Proprietatea CSS text-overflow specifică modul în care conținutul overflowed care nu este afișat trebuie semnalat utilizatorului.
Poate fi decupat sau poate fi redat ca elipsă (...).
CSS Word Wrapping
Proprietatea CSS word-wrap permite cuvintelor lungi să poată fi broken și wrap pe linia următoare.
Dacă un cuvânt este prea lung pentru a se încadra într-o zonă, acesta se extinde în afara.
Proprietatea word-wrap vă permite să forțați textul să fie wrap  - chiar dacă înseamnă împărțirea în mijlocul unui cuvânt.
CSS Word Breaking
Proprietatea CSS word-break specifică regulile de rupere a liniei.
Mod de scriere CSS (CSS Writing Mode)
Proprietatea CSS writing-mode specifică dacă liniile de text sunt dispuse orizontal sau vertical.
Proprietăți CSS Text Effect:
text-align-last - Specifică modul de aliniere la ultima linie a unui text
text-justify - Specifică modul în care textul justify ar trebui să fie aliniat și distanțat
text-overflow - Specifică modul în care conținutul revărsat care nu este afișat trebuie semnalat utilizatorului
word-break - Specifică regulile de rupere de linie pentru scripturile care nu sunt CJK
word-wrap - Permite cuvintele lungi pentru a putea fi broken și wrap pe linia următoare
writing-mode - Specifică dacă liniile de text sunt dispuse orizontal sau vertical

CSS Fonturi Web

Fonturi Web CSS
Regula CSS @ font-face
Fonturile web permit proiectanților web să utilizeze fonturi care nu sunt instalate pe computerul utilizatorului.
Când a-ți găsit / cumpărat fontul pe care doriți să-l utilizați, includeți doar fișierul font pe serverul dvs. web, iar acesta va fi descărcat automat la nevoie.
Fonturile dvs. proprii sunt definite în regula CSS @font-face.
Diferite formate de fonturi (Different Font Formats)
Fonturi TrueType (TTF)
TrueType este un standard de font dezvoltat la sfârșitul anilor 1980, de Apple și Microsoft. TrueType este cel mai frecvent format de font atât pentru sistemele de operare Mac OS cât și pentru Microsoft Windows.
Fonturi OpenType (OTF)
OpenType este un format pentru fonturile computerului scalabile. A fost construit pe TrueType și este marcă înregistrată a Microsoft. Fonturile OpenType sunt utilizate astăzi frecvent pe majore platforme de calculatoare.
Web Open Font Format (WOFF)
WOFF este un format de font folosit pentru paginile web. A fost dezvoltat în 2009 și este acum o recomandare a W3C. WOFF este în esență OpenType sau TrueType cu compresie și metadate suplimentare. Scopul este de a sprijini distribuirea fontului de la un server la un client printr-o rețea cu restricții de lățime de bandă.
Web Open Font Format (WOFF 2.0)
Fontul TrueType / OpenType care asigură o compresie mai bună decât WOFF 1.0.
Fonturi / forme SVG
Fonturile SVG permit SVG-ului să fie utilizat ca glife la afișarea textului. Specificația SVG 1.1 definește un modul de font care permite crearea de fonturi într-un document SVG. Puteți aplica CSS și în documentele SVG, iar regula @ font-face poate fi aplicată textului în documente SVG.
Fonturi OpenType încorporate (EOT)
Fonturile EOT sunt o formă compactă de fonturi OpenType proiectate de Microsoft pentru a fi utilizate ca fonturi încorporate pe paginile web.
Asistență browser pentru formate de fonturi
IE: formatul fontului funcționează numai atunci când este setat să fie „instalabil”.
Firefox: Nu este acceptat implicit, dar poate fi activat (trebuie să setați un steag la „true” pentru a utiliza WOFF2).
Utilizarea Bold Text
Trebuie să adăugați o altă regulă @font-face care conține descriptori pentru text bold
Descriptori de fonturi CSS (CSS Font Descriptors)

CSS Transformări 2D

Transformări 2D CSS
Transformările CSS vă permit să vă deplasați, să rotiți, să scalați și să înlăturați elemente.
Proprietăți CSS: transform.
Asistență browser (Browser Support)
Numerele din tabel specifică prima versiune a browserului care acceptă integral proprietatea.
Prefixuri specifice browserului
Unele browsere mai vechi au nevoie de prefixe specifice (-ms- sau -webkit-) pentru a înțelege proprietățile de transformare 2D.
CSS Metode de transformare 2D
Cu proprietatea de transformare CSS puteți utiliza următoarele metode de transformare 2D: translate(), rotate(), scaleX(), scaleY(), scale(), skewX(), skewY(), skew(), matrix()
Metoda translate() mută un element din poziția sa curentă (în funcție de parametrii indicați pentru axa X și axa Y).
Metoda rotate() roteste un element în sensul acelor de ceasornic sau în sens contrar acelor de ceasornic, în conformitate cu un anumit grad.
Utilizarea valorilor negative va roti elementul în sensul acelor de ceasornic.
Metoda scale() crește sau scade dimensiunea unui element (în funcție de parametrii dați pentru lățime și înălțime).
Metoda scaleX() crește sau scade lățimea unui element.
Metoda scaleY() crește sau scade înălțimea unui element.
Metoda skewX() frânează un element de-a lungul axei X cu unghiul dat.
Metoda skewY() frânează un element de-a lungul axei Y de unghiul dat.
Metoda skew() frânează un element de-a lungul axelor X și Y de unghiurile date.
Metoda matrix() combină toate metodele de transformare 2D într-una.
Metoda matrix() ia șase parametri, care conțin funcții matematice, ceea ce vă permite să rotiți, să scalați, să mutați (să translați) și să înlăturați elemente.
Parametrii sunt următorii: matrix(scaleX(),skewY(),skewX(),scaleY(),translateX(),translateY())
Proprietăți de transformare CSS
transform - Aplică o transformare 2D sau 3D la un element.
transform-origin - Vă permite să schimbați poziția asupra elementelor transformate.
CSS Metode de transformare 2D
matrix(n, n, n, n, n, n) - Definește o transformare 2D, folosind o matrice de șase valori
translate(x, y) -  Definește o transformare 2D, mutând elementul de-a lungul axei X și Y
translateX(n) - Definește o transformare 2D, mutând elementul de-a lungul axei X
translateY(n) - Definește o transformare 2D, mutând elementul de-a lungul axei Y
scale(x, y) - Definește o transformare la scară 2D, modificând lățimea și înălțimea elementelor
scaleX(n) - Definește o transformare la scară 2D, modificând lățimea elementului
scaleY(n) - Definește o transformare la scară 2D, schimbând înălțimea elementului
rotate(angle) - Definește o rotație 2D, unghiul este specificat în parametru
skew(angle x, angle y) - Definește o transformare în 2D de-a lungul axei X și Y
skewX(angle) - Definește o transformare în 2D de-a lungul axei X
skewY(angle) - Definește o transformare în 2D de-a lungul axei Y

CSS Transformări 3D

CSS Transformări 3D
CSS acceptă, de asemenea, transformări 3D.
În acest capitol veți afla despre următoarele proprietăți CSS: transform
Asistență browser (Browser Support)
Prefixuri specifice browserului
Unele browsere mai vechi au nevoie de prefixe specifice (-webkit-) pentru a înțelege proprietățiile de transformare 3D.
CSS Metode de transformare 3D
Cu proprietatea de transformare CSS puteți utiliza următoarele metode de transformare 3D: rotateX(), rotateY(), rotateZ()
Metoda rotateX() roteste un element in jurul axei X la un anumit grad.
Metoda rotateY() roteste un element in jurul axei sale Y la un anumit grad.
Metoda rotateZ() roteste un element in jurul axei Z la un anumit grad.
Proprietăți de transformare CSS
transform - Aplică o transformare 2D sau 3D la un element
transform-origin - Vă permite să schimbați poziția asupra elementelor transformate
transform-style - Specifică modul în care sunt redate elementele nested în spațiul 3D
perspective - Specifică perspectiva asupra modului în care sunt vizualizate elementele 3D
perspective-origin - Specifică poziția de jos a elementelor 3D
backface-visibility - Vizualizează dacă un element trebuie să fie vizibil atunci când nu este orientat către ecran
CSS Metode de transformare 3D
matrix3d
(n, n, n, n, n, n, n, n, n, n, n, n, n, n, n, n) - Definește o transformare 3D, folosind o matrice 4x4 cu 16 valori
translate3d(x, y, z) - Definește o traducere 3D
translateX(x) - Definește o traducere 3D, folosind doar valoarea pentru axa X
translateY(y) - Definește o traducere 3D, folosind doar valoarea pentru axa Y
translateZ(z) - Definește o traducere 3D, folosind doar valoarea pentru axa Z
scale3d(x, y, z) - Definește o transformare la scară 3D
scaleX(x) - Definește o transformare a scării 3D dând o valoare pentru axa X
scaleY(y) - Definește o transformare a scării 3D dând o valoare pentru axa Y
scaleZ(z) - Definește o transformare a scării 3D dând o valoare pentru axa Z
rotate3d(x, y, z, angle) - Definește o rotație 3D
rotateX(angle) - Definește o rotație 3D de-a lungul axei X
rotateY(angle) - Definește o rotație 3D de-a lungul axei Y
rotateZ(angle) - Definește o rotație 3D de-a lungul axei Z
perspective(n) - Definește o vedere în perspectivă pentru un element transformat 3D

CSS Tranziții

Tranziții CSS
Tranzițiile CSS vă permit să modificați valorile proprietății fără probleme, pe o durată dată.
În acest capitol veți afla despre următoarele proprietăți: transition, transition-delay, transition-duration, transition-property, transition-timing-function
Asistență browser pentru tranziții
Prefixuri specifice browserului
Unele browsere mai vechi au nevoie de prefixuri specifice (-webkit-) pentru a înțelege proprietățiile de tranziție
Cum se utilizează tranzițiile CSS?
Pentru a crea un efect de tranziție, trebuie să specificați două lucruri:
proprietatea CSS la care doriți să adăugați un efect
durata efectului
Dacă partea de durată nu este specificată, tranziția nu va avea nici un efect, deoarece valoarea implicită este 0.
Un element <div> 100px * 100px red. Elementul <div> a specificat, de asemenea, un efect de tranziție pentru proprietatea de lățime, cu o durată de 2 secunde.
Efectul de tranziție va începe atunci când proprietatea CSS (lățimea/width) specificată modifică valoarea.
Acum, să specificăm o nouă valoare pentru proprietatea de lățime/width atunci când un utilizator se alătură peste elementul <div>:
Atunci când cursorul se decuplează din element, acesta se va schimba treptat înapoi la stilul său original.
Modificați mai multe valori ale proprietății
Efect de tranziție atât pentru proprietatea lățimii (width), cât și pentru înălțime (height), cu o durată de 2 secunde pentru lățime (width) și 4 secunde pentru înălțime (height).
Specificați curba de viteză (speed curve) a tranziției
Proprietatea transition-timing-function specifică curba de viteză (speed curve) a efectului de tranziție.
Proprietatea transition-timing-function poate avea următoarele valori:
ease - specifică un efect de tranziție cu început lent, apoi rapid, apoi sfârșit lent (acest lucru este implicit)
linear - specifică un efect de tranziție cu aceeași viteză de la început până la sfârșit
ease-in - specifică un efect de tranziție cu pornire lentă
ease-out - specifică un efect de tranziție cu sfârșit lent
ease-in-out - specifică un efect de tranziție cu început și sfârșit lent
cubic-bezier(n,n,n,n) - vă permite să definiți propriile valori într-o funcție cub-bezier
Întârzie efectul de tranziție (Delay the Transition Effect)
Proprietatea transition-delay specifică o întârziere (în secunde) pentru efectul de tranziție.
Tranziție + transformare (Transition + Transformation)
Proprietățiile CSS transition pot fi specificate una câte una
Proprietatea shorthand transition
Proprietăți CSS transition:
transition - O proprietate scurtă pentru setarea celor patru proprietăți de tranziție într-o singură proprietate
transition-delay - Specifică o întârziere (în secunde) pentru efectul de tranziție
transition-duration - Specifică câte secunde sau milisecunde durează un efect de tranziție
transition-property - Specifică numele proprietății CSS pentru care este efectul de tranziție
transition-timing-function - Specifică curba de viteză a efectului de tranziție

CSS Animații

Animații CSS
CSS permite animarea elementelor HTML fără a utiliza JavaScript sau Flash!
În acest capitol veți afla despre următoarele proprietăți: @keyframes, animation-name, animation-duration, animation-delay, animation-iteration-count, animation-direction, animation-timing-function, animation-fill-mode, animation.
Asistență browser pentru animații (Browser Support for Animations)
Prefixuri specifice browserului
Unele browsere mai vechi au nevoie de prefixe specifice (-webkit-) pentru a înțelege proprietățiile de animație.
Ce sunt animațiile CSS?
O animație permite unui element să se schimbe treptat de la un stil la altul.
Puteți modifica câte proprietăți CSS doriți, de câte ori doriți.
Pentru a utiliza animația CSS, trebuie mai întâi să specificați câteva cadre cheie pentru animație.
Cadrele cheie conțin ce stiluri va avea elementul în anumite momente.
Regula @keyframes
Când specificați stiluri CSS din regula @keyframes, animația se va schimba treptat de la stilul curent la noul stil în anumite momente.
Pentru ca animația să funcționeze, trebuie să legați animația de un element.
Legarea animației „exemplu” de elementul <div>. Animația va dura 4 secunde și va schimba treptat culoarea de fundal a elementului <div> de la „red” la „yellow”.
Proprietatea animation-duration definește cât timp ar trebui să dureze o animație. Dacă proprietatea animation-duration nu este specificată, nu va apărea nicio animație, deoarece valoarea implicită este 0s (0 secunde).
Am specificat când stilul se va schimba folosind cuvintele cheie „from” și „to” (care reprezintă 0% (start) și 100% (complet)).
Este posibilă utilizarea procentului. Utilizând procente, puteți adăuga oricâte modificări de stil doriți.
Schimbarea culorii de fundal (background-color) a elementului <div> atunci când animația este completă 25%, 50% completă și din nou când animația este 100% completă:
Întârziere animație (Delay an Animation)
Proprietatea animation-delay specifică o întârziere pentru începerea unei animații.
De asemenea, sunt permise valori negative. Dacă utilizați valori negative, animația va începe ca și cum ar fi jucat deja N secunde.
Setați de câte ori ar trebui să ruleze o animație
Proprietatea animation-iteration-count specifică numărul pe care trebuie să-l ruleze o animație.
Valoarea „infinite”  - pentru a face animația să continue pentru totdeauna
Rulați animația în direcție inversă sau cicluri alternative
Proprietatea animation-direction specifică dacă o animație trebuie să fie redată înainte, înapoi sau în cicluri alternative.
Proprietatea animation-direction poate avea următoarele valori:
normal - Animația este redată normal (înainte). Aceasta este implicită
reverse - animația este redată în sens invers (înapoi)
alternate - animația este redată mai întâi, apoi înapoi
alternate-reverse - animația este redată mai întâi înapoi, apoi înainte
Rulare animație în sens invers (înapoi)(backwards).
Valoarea "alternate" pentru a face ca animația să fie difuzată mai întâi înainte (forwards), apoi înapoi (backwards).
Valoarea „alternate-reverse” pentru a face ca animația să fie rulată mai întâi înapoi(backwards), apoi înainte (forwards)
Rulați animația în direcție inversă sau cicluri alternative
Proprietatea animation-direction specifică dacă o animație trebuie să fie redată înainte, înapoi sau în cicluri alternative.
Proprietatea animation-direction poate avea următoarele valori:
normal - Animația este redată normal (înainte)(forwards). Aceasta este implicită
reverse - animația este redată în sens invers (înapoi)
alternate - animația este redată mai întâi înainte(forwards), apoi înapoi(backwards)
alternate-reverse - animația este redată mai întâi înapoi(backwards), apoi înainte(forwards)
Rulare animație în sens invers (înapoi)(backwards):
Valoarea "alternate" pentru a face ca animația să fie difuzată mai întâi înainte (forwards), apoi înapoi (backwards).
Valoarea „alternate-reverse” pentru a face ca animația să fie rulată mai întâi înapoi(backwards), apoi înainte(forwards).
Precizați curba de viteză (Speed Curve) a animației
Proprietatea animation-timing-function specifică curba de viteză (speed curve) a animației.
Proprietatea animation-timing-function  poate avea următoarele valori:
ease - Specifică o animație cu început lent, apoi rapid, apoi sfârșit încet (aceasta este implicit)
linear - Specifică o animație cu aceeași viteză de la început până la sfârșit
ease-in - Specifică o animație cu pornire lentă
ease-out - Specifică o animație cu sfârșit lent
ease-in-out - Specifică o animație cu început și sfârșit lent
cubic-bezier(n,n,n,n) - Vă permite să definiți propriile valori într-o funcție cubic-bezier
Precizați modul de completare (fill-mode) pentru o animație
Animațiile CSS nu afectează un element înainte de a fi redat primul cadru-cheie (keyframe) sau după ce ultimul cadru-cheie (keyframe) este redat. Proprietatea animation-fill-mode poate înlocui acest comportament.
Proprietatea animation-fill-mode specifică un stil pentru elementul țintă atunci când animația nu se joacă (înainte de a începe, după ce se termină, sau ambele).
Proprietatea animation-fill-modepoate avea următoarele valori:
none - Valoare implicită. Animația nu va aplica niciun stil la element înainte sau după executarea acestuia
forwards - Elementul va pastra valorile stilului setate de ultimul cadru cheie (keyframe) (depinde de animation-direction și animation-iteration-count)
backwards - Elementul va obține valorile de stil setate de primul cadru-cheie (keyframe) (depinde de animation-direction) și îl va păstra în timpul perioadei de întârziere a animației
both - Animația va respecta regulile atât în ​​față cât și înapoi (forwards și backwards), extinzând proprietățiile de animație în ambele direcții
Elementul <div> păstrează valorile stilului de la ultimul cadru cheie (keyframe) la încheierea animației.
Exemple animation-fill-mode
Elementul <div> obține valorile style setate de primul cadru cheie (keyframe) înainte de începerea animației (în perioada de întârziere a animației (animation-delay)).
Elementul <div> obține valorile style setate de primul cadru cheie (keyframe) înainte de începerea animației și să păstreze valorile stilului de la ultimul cadru de cheie (keyframe) atunci când animația se încheie.
Proprietatea Shorthand Animation
Proprietăți CSS animation
@keyframes - Specifică codul de animație
animation - O proprietate shorthand pentru setarea tuturor proprietăților de animație
animation-delay - Specifică o întârziere pentru începerea unei animații
animation-direction - Specifică dacă o animație trebuie să fie redată înainte, înapoi sau în cicluri alternative
animation-duration - Specifică cât timp trebuie să dureze o animație pentru a finaliza un ciclu
animation-fill-mode - Specifică un stil pentru element atunci când animația nu se joacă (înainte de a începe, după ce se termină sau ambele)
animation-iteration-count - Specifică numărul de ori când trebuie să fie redată o animație
animation-name - Specifică numele animației @keyframes
animation-play-state - Specifică dacă animația este în curs de execuție sau în pauză
animation-timing-function - Specifică curba de viteză a animației

CSS Tooltip

CSS Tooltip
Creați tooltips cu CSS.
Un tooltip este adesea folosit pentru a specifica informații suplimentare despre ceva când utilizatorul mută indicatorul mouse-ului peste un element.
Basic Tooltip
Creați un tooltip care apare când utilizatorul mută mouse-ul peste un element.
HTML: Utilizați un element container (cum ar fi <div>) și adăugați-i clasa „tooltip”. Când utilizatorul trece cu mouse-ul peste acest <div>, va afișa textul de tip tooltip.
Textul de tip tooltip este plasat în interiorul unui element inline (cum ar fi <span>) cu class = "tooltiptext".
CSS: Clasa tooltip folosește position:relative, care este necesară pentru poziționarea textului tooltip (position:absolute).
Consultați exemplele de mai jos despre cum să poziționați indicatorul.
Clasa tooltiptext conține textul actual de tip tooltip. Este ascunsă în mod implicit și va fi vizibilă în hover (vezi mai jos). De asemenea, i-am adăugat câteva stiluri de bază: 120px lățime (width), culoare de fundal neagră, culoare text alb, text centrat (black background color, white text color, centered text) și 5px top și bottom padding.
Proprietatea CSS border-radius este utilizată pentru a adăuga colțuri rotunjite (rounded corners) tooltip text.
Selectorul :hover este utilizat pentru a afișa textul de tip tooltip atunci când utilizatorul mută mouse-ul peste <div> cu class="tooltip".
Positioning Tooltips
tooltip-ul este plasat la dreapta (left: 105%) a textului „hoverable” (<div>). De asemenea, rețineți că partea de sus:-5px (top:-5px) este utilizată pentru a-l plasa în mijlocul elementului container. Folosim numărul 5 deoarece textul de tip tooltip are o acoperire de 5px în partea de sus și de jos (top and bottom padding). Dacă măriți padding, creșteți și valoarea proprietății de top pentru a vă asigura că aceasta rămâne la mijloc (dacă este ceea ce doriți). Același lucru este valabil dacă doriți ca tooltip să fie plasat la stânga.
Dacă doriți ca tooltip să apară în partea de sus sau de jos ( top sau bottom), consultați exemplele de mai jos. Rețineți că folosim proprietatea margin-left cu o valoare de minus 60 pixeli. Acest lucru este pentru a centra tooltip deasupra/sub (above/below ) textul hoverable. Este setat la jumătatea lățimii tooltip-ului (120/2 = 60).
Instrumente săgeți (Tooltip Arrows)
Pentru a crea o săgeată (arrow) care ar trebui să apară dintr-o parte specifică a tooltip-ului, adăugați conținut „empty” după tooltip, cu pseudo-element class ::after împreună cu proprietatea content. Săgeata în sine este creată folosind borders. Acest lucru va face ca tooltip-ul să pară un speech bubble.
Adăugare săgeată la partea de jos a tooltip-ului.
Poziționarea săgeții în interiorul tooltip: top: 100% va așeza săgeata în partea de jos a tooltip. left: 50% va centra săgeata.
Proprietatea border-width specifică dimensiunea săgeții. Dacă schimbați acest lucru, modificați, de asemenea, valoarea margin-left. Aceasta va menține săgeata centrată.
Border-color este utilizată pentru a transforma conținutul într-o săgeată. Am stabilit top border la negru, iar restul la transparent. Dacă toate părțile ar fi negre, s-ar termina cu o black square box.
Adăugați o săgeată în partea de sus a tooltip.
Adăugați o săgeată la stânga tooltip-ului.
Adăugați o săgeată la dreapta tooltip-ului.
Fade In Tooltips (Animation)
Dacă doriți să aplicați fade în tooltip text când urmează să fie vizibil, puteți utiliza proprietatea CSS transition împreună cu proprietatea opacity și puteți trece de la a fi complet invizibil la 100% vizibil, într-un număr de secunde specificate (1 secundă în exemplul nostru).

CSS Stilizarea imaginilor

CSS Stilizarea imaginilor (CSS Styling Images)
Imagini rotunjite (Rounded Images)
Utilizați proprietatea border-radius pentru a crea imagini rotunjite (rounded images).
Imagini în miniatură (Thumbnail Images)
Utilizați proprietatea border pentru a crea imagini în miniatură (thumbnail images).
Imagine in miniatură (thumbnail image).
Imagine în miniatură ca link (Thumbnail Image as Link).
Imagini responsive (Responsive Images)
Imaginile responsive se vor regla automat pentru a se potrivi cu dimensiunea ecranului.
Redimensionați fereastra browserului pentru a vedea efectul.
Centrați o imagine (Center an Image)
Pentru a centra o imagine, setați marginea stângă și dreapta pe auto și transformați-o într-un element block.
Imagini / Carduri Polaroid (Polaroid Images / Cards)
Imagine transparentă
Proprietatea opacity poate lua o valoare între 0,0 și 1,0. Cu cât valoarea este mai mică, cu atât este mai transparentă:
IE8 și versiunile anterioare folosesc filter:alpha(opacity=x). X poate lua o valoare de la 0 la 100. O valoare mai mică face ca elementul să fie mai transparent.
Image Text
Cum se poziționează textul într-o imagine.
Filtre de imagine (Image Filters)
Proprietatea CSS filter adaugă efecte vizuale (precum estomparea și saturația/(blur and saturation) unui element.
Proprietatea CSS filter nu este acceptată în Internet Explorer, Edge 12 sau Safari 5.1 și nici în versiunile anterioare.
Image Hover Overlay
Creați un efect de suprapunere asupra hover.
Rotiți o imagine
Mutați mouse-ul peste imagine.
Galerie de imagini responsive
CSS poate fi utilizat pentru a crea galerii de imagini. Acest exemplu utilizează interogări media pentru a reorganiza imaginile pe dimensiuni de ecran diferite. Redimensionați fereastra browserului pentru a vedea efectul.
Image Modal (Advanced)
Modul în care CSS și JavaScript pot lucra împreună.
În primul rând, utilizați CSS pentru a crea o fereastră modală (dialog box) și ascundeți-o în mod implicit.
Apoi, utilizați un JavaScript pentru a afișa fereastra modală și pentru a afișa imaginea în interiorul modalului, atunci când un utilizator face click pe imagine.

CSS object-fit

Proprietatea CSS object-fit
Proprietatea CSS object-fit este utilizată pentru a specifica modul în care un <img> sau <video> trebuie redimensionat pentru a se potrivi cu containerul său.
Această proprietate spune conținutului să umple containerul într-o varietate de moduri; cum ar fi „păstrați acel raport de aspect” sau „întindeți-vă și ocupați cât mai mult spațiu”.
Asistență browser (Browser Support)
Avem două imagini și dorim ca acestea să umple lățimea de 50% a ferestrei browserului și 100% din înălțime.
Nu folosim object-fit, așa că atunci când redimensionăm fereastra browserului, raportul de aspect al imaginilor va fi distrus.
Folosim object-fit: cover; astfel, când redimensionăm fereastra browserului, raportul de aspect al imaginilor este păstrat.
Toate valorile proprietății CSS object-fit
Proprietatea CSS object-fit poate avea următoarele valori:
fill - Aceasta este implicită. Conținutul înlocuit este dimensionat pentru a completa content box a elementului. Dacă este necesar, obiectul va fi stretched sau squished pentru a se potrivi
contain - Conținutul înlocuit este scalat pentru a-și menține raportul de aspect (aspect ratio) în timp ce se încadrează în content box a elementului
cover - Conținutul înlocuit este dimensionat pentru a-și păstra raportul de aspect (aspect ratio) în timp ce umpleți întreaga content box a elementului. Obiectul va fi tăiat (clipped ) pentru a se potrivi
none - Conținutul înlocuit nu este redimensionat
scale-down - Conținutul este dimensionat ca și cum nici un conținut nu a fost specificat (ar avea ca rezultat o dimensiune mai mică a obiectului concret).

CSS Butoane

Butoane CSS
Aflați cum puteți stabili butoanele folosind CSS.
Stilarea butonului de bază (Basic Button Styling)
Culorile butoanelor (Button Colors)
Utilizați proprietatea background-color pentru a schimba culoarea de fundal a unui buton
Mărimea butoanelor (Button Sizes).
Utilizați proprietatea font-size pentru a modifica dimensiunea fontului unui buton.
Utilizați proprietatea padding pentru a schimba umplerea unui buton.
Butoane rotunjite (Rounded Buttons)
Utilizați proprietatea border-radius pentru a adăuga colțuri rotunjite la un buton.
Margini butoane colorate (Colored Button Borders)
Utilizați proprietatea border pentru a adăuga un chenar colorat la un buton
Butoane Hoverable
Utilizați selectorul :hover pentru a schimba stilul unui buton atunci când deplasați mouse-ul peste el.
Utilizați proprietatea transition pentru a determina viteza efectului „hover”.
Butoane Shadow
Utilizați proprietatea box-shadow pentru a adăuga umbre la un buton.
Butoane dezactivate (Disabled Buttons)
Utilizați proprietatea opacity pentru a adăuga transparență unui buton (creează un aspect „disabled”).
Puteți adăuga, de asemenea, proprietatea cursor cu o valoare „nepermisă” (not-allowed), care va afișa un „no parking sign” când faceți click peste buton.
Lățimea butonului (Button Width)
În mod implicit, dimensiunea butonului este determinată de conținutul textului său (la fel de larg ca și conținutul său). Utilizați proprietatea width pentru a modifica lățimea unui buton.
Grupuri de butoane (Button Groups)
Eliminați marginile și adăugați float:left la fiecare buton pentru a crea un grup de butoane.
Grup de butoane mărginite (Bordered Button Group)
Utilizați proprietatea border pentru a crea un grup de butoane mărginite.
Grup vertical de butoane (Vertical Button Group)
Utilizați display:block în loc de float:left pentru a grupa butoanele unul sub altul, în loc de alături
Buton pe imagine (Button on Image)
Adăugați un buton la o imagine.
Butoane animate (Animated Buttons)
Adăugați o săgeată la hover.
Adăugați un efect „apăsat” (pressed) pe click.
Fade in on hover.
Adăugați un efect „ripple” la click.

CSS Paginare

CSS Paginare
Aflați cum puteți crea o paginare responsive folosind CSS.
Paginare simplă
Dacă aveți un site web cu o mulțime de pagini, poate doriți să adăugați un fel de paginare la fiecare pagină.
Paginarea activă și hoverable
Evidențiați pagina curentă cu o clasă .active și folosiți selectorul :hover pentru a schimba culoarea fiecărei linii de pagină atunci când deplasați mouse-ul peste ele.
Butoane rotunjite active și hoverable
Dacă doriți un buton rotund „active” și „hover” adăugați proprietatea border-radius.
Efect de tranziție hoverable (Hoverable Transition Effect)
Adăugați proprietatea transition la link-urile paginii pentru a crea un efect de tranziție în timpul trecerii (hover).
Paginare mărginită (Bordered Pagination)
Utilizați proprietatea border pentru a adăuga borduri la paginație.
Margini rotunjite (Rounded Borders)
Adăugați rounded borders la prima și ultima dvs. legătură (link) din paginare.
Spațiu între legături (Space Between Links)
Adăugați proprietatea margin dacă nu doriți să grupați linkurile paginii.
Mărimea paginării (Pagination Size)
Modificați dimensiunea paginării cu proprietatea font-size.
Paginarea centrată (Centered Pagination)
Pentru a centra paginarea, wrap un element de tip container (cum ar fi <div>) în jurul lui cu text-align:center
Paginare Breadcrumbs
O altă variantă a paginării este așa-numita "breadcrumbs"

CSS Coloane multiple

CSS Coloane multiple
Layout cu mai multe coloane CSS( CSS Multi-column Layout)
Aspectul cu mai multe coloane CSS (multi-column layout) permite definirea ușoară a mai multor coloane de text - la fel ca în ziare.
Proprietăți CSS Multi-column
În acest capitol veți afla despre următoarele proprietăți CSS multi-column: column-count, column-gap, column-rule-style, column-rule-width, column-rule-color, column-rule, column-span, column-width.
Asistență browser (Browser Support)
CSS Creează mai multe coloane (CSS Create Multiple Columns)
Proprietatea column-count specifică numărul de coloane în care trebuie divizat un element.
Impărțirea textului din elementul <div> în 3 coloane.
CSS Specificați decalajul dintre coloane (CSS Specify the Gap Between Columns)
Proprietatea column-gap specifică decalajul dintre coloane.
Specifică o distanță de 40 de pixeli între coloane.
CSS Reguli coloane (CSS Column Rules)
Proprietatea column-rule-style specifică stilul regulii dintre coloane.
Proprietatea column-rule-width specifică lățimea regulii între coloane.
Proprietatea column-rule-color specifică culoarea regulii dintre coloane.
Proprietatea column-rule este o proprietate shorthand pentru setarea tuturor proprietăților column-rule- * de mai sus.
Stabilre lățimea, stilul și culoarea (width, style, color) regulii între coloane.
Specificați câte coloane ar trebui să se întindă (Specify How Many Columns an Element Should Span)
Proprietatea column-span specifică câte coloane ar trebui să se întindă (span) între un element.
Următorul exemplu specifică faptul că elementul <h2> ar trebui să se întindă (span) pe toate coloanele.
Specificați Lățimea coloanei (Specify The Column Width)
Proprietatea coloană-lățime specifică o lățime sugerată, optimă pentru coloane.
Specifică faptul că lățimea optimă sugerată pentru coloane ar trebui să fie de 100px.
Proprietăți CSS Multi-columns
column-count - Specifică numărul de coloane în care trebuie divizat un element
column-fill - Specifică modul de completare a coloanelor
column-gap - Specifică decalajul dintre coloane
column-rule - O proprietate shorthand pentru setarea tuturor proprietăților column-rule- *
column-rule-color - Specifică culoarea regulii dintre coloane
column-rule-style - Specifică stilul regulii dintre coloane
column-rule-width - Specifică lățimea regulii dintre coloane
column-span - Specifică câte coloane ar trebui să se întindă pe un element
column-width - Specifică o lățime sugerată, optimă pentru coloane
columns - O proprietate shorthand pentru setarea lățimii coloanei și a numărului de coloane

 

CSS Interfață utilizator

CSS Interfață utilizator
În acest capitol veți afla despre următoarele proprietăți ale interfeței de utilizator CSS: resize, outline-offset
Asistență browser
Numerele din tabel specifică prima versiune a browserului care acceptă integral proprietatea.
Redimensionare CSS (CSS Resizing)
Proprietatea resize specifică dacă (și cum) un element trebuie redimensionat de către utilizator.
Internet Explorer și Edge nu acceptă proprietatea resize.
Permite utilizatorului să redimensioneze doar lățimea unui element <div>.
Permite utilizatorului să redimensioneze doar înălțimea unui element <div>.
Permite utilizatorului redimensionarea atât a înălțimii, cât și a lățimii unui element <div>.
În multe browsere, <textarea> poate fi redimensionată în mod implicit. Aici, am folosit proprietatea resize pentru a dezactiva redimensionarea.
CSS Outline Offset
Proprietatea outline-offset adaugă spațiu între un contur (outline) și margine (edge) sau un border unui element.
Conturul (Outline) diferă de granițe (borders)! Spre deosebire de graniță (border), conturul (outline) este tras în afara graniței (border) elementului și poate suprapune alt conținut. De asemenea, conturul (outline) NU este o parte din dimensiunile elementului; lățimea și înălțimea (width și height) totală a elementului nu este afectată de lățimea conturului (outline).
Următorul exemplu utilizează proprietatea outline-offset pentru a adăuga spațiu între graniță (borders) și contur (outline)
Proprietăți CSS interfață utilizator
outline-offset - Adăugă spațiu între un contur (outline) și margine (edge) sau marginea (border) unui element
resize - Specifică dacă un element poate fi redimensionat de către utilizator

CSS Variabile

Variabile CSS
Proprietăți CSS personalizate (variabile)
Funcția var() poate fi utilizată pentru a insera valoarea unei proprietăți personalizate.
Asistență browser (Browser Support)
Numerele din tabel specifică prima versiune a browserului care acceptă integral proprietatea.
Funcția var()
Variabilele din CSS ar trebui declarate în cadrul unui selector CSS care definește domeniul său de aplicare. Pentru un domeniu global, puteți utiliza fie :root sau selectorul body.
Numele variabilei trebuie să înceapă cu două liniuțe (--) și este sensibil la litere mari și mici!
custom-name - Obligatoriu. Numele proprietății personalizate (trebuie să înceapă cu două liniuțe).
value - Opțional. Valoarea de retragere (folosită dacă proprietatea personalizată este nevalidă).
Definire proprietate personalizată globală numită  "--main-bg-color", apoi folosire funcția var() pentru a insera valoarea proprietății personalizate ulterior în foaia de stil (style sheet):
CSS Funcția var()
var () - Inserează valoarea unei proprietăți custom

CSS Box Sizing

CSS Box Sizing
Proprietatea CSS box-sizing ne permite să includem padding și border în lățimea și înălțimea totală (width și height) a unui element.
Fără proprietatea CSS box-sizing
În mod implicit, lățimea și înălțimea (width și height) unui element sunt calculate astfel:
width + padding + border = lățimea reală a unui element
height + padding + border = înălțimea reală a unui element
Aceasta înseamnă: Când setați lățimea / înălțimea (width/height) unui element, elementul pare adesea mai mare decât ați setat (deoarece border-ul și padding-ul elementului sunt adăugate la lățimea / înălțimea (width/height) specificată a elementului).
Cu proprietatea CSS box-sizing
Proprietatea CSS box-sizing ne permite să includem padding și border în lățimea și înălțimea (width și height) totală a unui element.
Dacă setați box-sizing: border-box; pe un element padding și border sunt incluse în lățime și înălțime (width și height).
Deoarece rezultatul utilizării box-sizing: border-box; este cu atât mai bine, mulți dezvoltatori doresc ca toate elementele din paginile lor să funcționeze astfel.
Codul de mai jos asigură în acest mod mai intuitiv dimensiunea tuturor elementelor. Multe browsere folosesc deja box-sizing: border-box; pentru multe elemente de formă (dar nu toate - motiv pentru care inputs și text areas arată diferit la width: 100%;).
Aplicarea acestui lucru pe toate elementele este sigur și înțelept.
Proprietatea CSS Box Sizing
box-sizing - Defineste modul în care se calculează lățimea și înălțimea (width și height) unui element: trebuie să includă padding și borders, sau nu.

CSS Interogări media

CSS Interogări media (CSS Media Queries)
CSS2 Tipuri de suport introduse (CSS2 Introduced Media Types)
Regula @media, introdusă în CSS2, a făcut posibilă definirea regulilor de stil (style rules) diferite pentru diferite tipuri de media.
Ați putea avea un set de reguli de stil (style rules) pentru ecrane de computer, una pentru imprimante, una pentru dispozitive portabile, una pentru dispozitive tip televizor și așa mai departe.
Din păcate, aceste tipuri de suporturi nu au primit niciodată multă asistență din partea dispozitivelor, în afară de tipul de printare (print media type).
CSS3 Interogări media introduse (CSS3 Introduced Media Queries)
Interogările media (Media queries) din CSS3 au extins ideea tipurilor de media CSS2: În loc să caute un tip de dispozitiv, ele analizează capacitatea dispozitivului.
Interogările media (Media queries) pot fi utilizate pentru a verifica multe lucruri, cum ar fi:
lățimea și înălțimea vizualizării (width and height of the viewport)
lățimea și înălțimea dispozitivului (width and height of the device)
orientare (tableta / telefonul este în mod landscape sau portret?) (orientation (is the tablet/phone in landscape or portrait mode?))
rezoluţie (resolution)
Asistență browser(Browser Support)
Numerele din tabel specifică prima versiune a browserului care acceptă integral regula @media.
Sintaxa interogare media (Media Query Syntax)
O interogare media (media query) constă dintr-un tip media și poate conține una sau mai multe expresii, care se rezolvă returnand  fie valoarea adevărat, fie valoarea fals.
Rezultatul interogării este adevărat dacă tipul de media (media type) specificat se potrivește cu tipul de dispozitiv pe care este afișat documentul și toate expresiile din interogarea media (media query) sunt adevărate. Când o interogare media (media query) este adevărată, se aplică foaia de stil (stylesheets) sau regulile de stil (style rules) corespunzătoare, urmând regulile normale în cascadă.
Cu excepția cazului în care utilizați operatorii not sau only, tipul media este opțional și tot tipul va fi implicat.
Puteți avea, de asemenea, foi de stil (stylesheets) diferite pentru media diferite.
CSS3 Tipuri media (CSS3 Media Types)
all - Utilizat pentru toate dispozitivele de tip media
print - Utilizat pentru imprimante
screen - Utilizat pentru ecrane, tablete, telefoane inteligente etc.
speach - Utilizată pentru ecranizatorii care „citesc” pagina cu voce tare
O modalitate de a utiliza interogări media (media queries) este să aveți o secțiune CSS alternativă chiar în foaia de stil (style sheet).

CSS Flexbox

CSS Flexbox
CSS Modulul Flexbox Layout (CSS Flexbox Layout Module)
Înainte de modulul Layout Flexbox, existau patru moduri de aspect:
Block, pentru secțiunile dintr-o pagină web
Inline, pentru text
Table, pentru date în două dimensiuni ale tabelului
Positioned, pentru poziția explicită a unui element
Flexible Box Layout Module, face mai ușoară proiectarea unei structuri flexibile layout responsive fără a folosi float sau poziționare (positioning).
Asistență browser(Browser Support)
Proprietățilie flexbox sunt acceptate în toate browserele moderne.
Elemente Flexbox (Flexbox Elements)
Pentru a începe să utilizați modelul Flexbox, trebuie să definiți mai întâi un recipient flex (flex container).
Elementul de mai sus reprezintă un recipient flex (flex container) (zona albastră) cu trei elemente flexibile.
Un container flex cu trei articole flexibile.
O dispunere flexibilă (Flexible Layout) trebuie să aibă un element părinte cu proprietatea de afișare setată la flex.
Elementele directe ale copilului ale containerului flexibil devin automat elemente flexibile.
Proprietățiile containerului flex sunt: flex-direction, flex-wrap, flex-flow, justify-content, align-items, align-content.
Proprietatea flex-direction
Proprietatea flex-direction definește în ce direcție containerul dorește să stiveze elementele flex.
 "flex-direction: column;" stivuiește elementele flexate vertical (de sus în jos).
Valoarea coloanei (column) stochează vertical elementele flex (de sus în jos).
Valoarea coloană-inversă (column-reverse) stochează vertical elementele flex (dar de jos în sus).
Valoarea row-reverse stochează elementele flexate pe orizontală (dar de la dreapta la stânga).
Proprietatea flex-wrap specifică dacă elementele flex trebuie să fie wrap sau nu.
Valoarea wrap specifică faptul că elementele flex se vor wrap dacă este necesar.
Valoarea nowrap specifică faptul că elementele flex nu se vor wrap (aceasta este implicită).
Valoarea wrap-reverse specifică faptul că elementele flexibile se vor wrap dacă este necesar, în ordine inversă.
Proprietatea flex-flow este o proprietate shorthand pentru setarea proprietăților flex-direction și flex-wrap.
Proprietatea justify-content este utilizată pentru alinierea elementelor flex
Valoarea center aliniază elementele flex în centrul containerului
Valoarea flex-start aliniază elementele flex la începutul containerului (implicit)
Valoarea flex-end aliniază elementele flex la sfârșitul containerului
Valoarea space-around afișează elementele flex cu spațiu înainte, între și după linii (before, between și after)
Valoarea space-between afișează elementele flexibile cu spațiu între linii
Proprietatea align-items este utilizată pentru alinierea elementelor flexate pe verticală.
Utilizăm un container înalt de 200 de pixeli, pentru a demonstra mai bine proprietatea align-items.
Valoarea center aliniază elementele flex din mijlocul containerului.
Valoarea flex-start aliniază elementele flex din partea de sus a containerului.
Valoarea flex-end aliniază elementele flex din partea de jos a containerului.
Valoarea stretch întinde elementele flex pentru a umple containerul (aceasta este implicit).
Valoarea baseline aliniază elementele flex, cum ar fi alinierea lor de bază.
Proprietatea align-content este utilizată pentru a alinia liniile flex.
În aceste exemple, utilizăm un container înalt de 600 de pixeli, cu proprietatea flex-wrap setată pentru a wrapa, pentru a demonstra mai bine proprietatea align-content.
Valoarea space-between afișează liniile flexate cu spațiu egal între ele.
Valoarea space-around afișează liniile flexate cu spațiu înainte, între și după ele.
Valoarea stretch întinde liniile flex pentru a ocupa spațiul rămas (acesta este implicit).
Valoarea center afișează liniile de flexare din mijlocul containerului.
Valoarea flex-start afișează liniile flex la începutul containerului.
Valoarea flex-end afișează liniile de flex la sfârșitul containerului.
Centrare perfectă
În următorul exemplu, vom rezolva o problemă de stil foarte comună: centrarea perfectă (perfect centering).
Setați atât proprietățiile justify-content, cât și align-items in centru, iar elementul flex va fi perfect centrat.
Child Elements (Items)
Elementele child directe ale unui recipient flex devin automat elemente flexibile (flexibile).
Proprietățiile elementului flex: order, flex-grow, flex-shrink, flex-basis, flex, align-self.
Proprietatea order specifică ordinea elementelor flex.
Primul element flex din cod nu trebuie să apară ca primul element din layout.
Valoarea order trebuie să fie un număr, valoarea implicită este 0.
Proprietatea order poate modifica ordinea articolelor flex.
Proprietatea flex-grow specifică cât de mult va crește un element flex în raport cu restul elementelor flex.
Valoarea flex-grow trebuie să fie un număr, valoarea implicită este 0.
Faceți ca cel de-al treilea element flex să crească de opt ori mai rapid decât celelalte elemente flex.
Proprietatea flex-shrink specifică cât de mult se va micsora un element flex în raport cu restul elementelor flex.
Valoarea flex-shrink trebuie să fie un număr, valoarea implicită este 1.
Nu lăsați al treilea element flex să se micșoreze la fel de mult decât celelalte elemente flex.
Proprietatea flex-basis specifică lungimea inițială a unui element flex.
Proprietatea flex este o proprietate shorthand pentru proprietățiile flex-grow, flex-shrink și flex-basis.
Proprietatea align-self specifică alinierea pentru elementul selectat în interiorul containerului flexibil.
Proprietatea align-self înlocuiește alinierea setată implicit de proprietatea align-items a containerului.
Galerie de imagini responsive folosind Flexbox
Utilizați flexbox pentru a crea o galerie de imagini responsive care variază între patru, două sau imagini cu lățime completă, în funcție de dimensiunea ecranului.
Website responsive folosind Flexbox
Utilizați flexbox pentru a crea un responsive website, care conține o bară de navigare flexibilă și conținut flexibil.
Proprietăți CSS Flexbox
display - Specifică tipul de box folosit pentru un element HTML
flex-direction - Specifică direcția articolelor flexibile din interiorul unui recipient flex
justify-content - Aliniază orizontal elementele flex atunci când elementele nu folosesc tot spațiul disponibil pe axa principală
align-items - Aliniază vertical elementele flex atunci când elementele nu folosesc tot spațiul disponibil pe axa transversală
flex-wrap - Specifică dacă elementele flexate trebuie să se înfășoare (wrap) sau nu, dacă nu există suficient loc pentru ele pe o singură linie flex
align-content - Modifică comportamentul proprietății flex-wrap. Este similar cu align-items, dar în loc să alinieze elementele flex, aliniază liniile flex
flex-flow - O proprietate shorthand pentru flex-direction și flex-wrap
order - Specifică ordinea unui articol flexibil în raport cu restul elementelor flexibile din interiorul aceluiași recipient
align-self - Folosit pe articolele flex. Înlocuiește proprietatea align-items
flex - O proprietate shorthand pentru proprietățile flex-grow, flex-shrink și flex-basis

CSS Interogări media - Exemple

Interogări media CSS - exemple
Interogările media sunt o tehnică populară pentru livrarea unei foi de stil adaptate diferitelor dispozitive. Pentru a demonstra un exemplu simplu, putem schimba culoarea de fundal pentru diferite dispozitive.
Interogări media pentru meniuri
În acest exemplu, folosim interogări media pentru a crea un meniu de navigare responsive, care variază în ceea ce privește designul pe diferite dimensiuni de ecran.
Interogări media pentru coloane
O utilizare obișnuită a interogărilor media este de a crea un aspect flexibil (flexible layout). În acest exemplu, creem un aspect (layout) care variază între patru, două și full-width coloane, în funcție de diferitele dimensiuni ale ecranului.
Un mod mai modern de a crea column layouts este să folosiți CSS Flexbox. Cu toate acestea, nu este acceptat în Internet Explorer 10 și versiunile anterioare. Dacă aveți nevoie de asistență IE6-10, folosiți floats.
Ascundeți elementele cu interogări media
O altă utilizare obișnuită a interogărilor media este de a ascunde elemente pe diferite dimensiuni ale ecranului.
Modificați dimensiunea fontului cu interogări media
De asemenea, puteți utiliza interogări media pentru a modifica dimensiunea fontului (font size) unui element pe diferite dimensiuni ale ecranului.
Galerie de imagini flexibile
Folosim interogări media împreună cu flexbox pentru a crea o galerie de imagini responsive.
Site web flexibil
Utilizăm interogări media împreună cu flexbox pentru a crea un site web responsive, care conține o bară de navigare flexibilă și conținut flexibil.
Orientare: Portret / Peisaj
Interogările media pot fi, de asemenea, utilizate pentru a schimba aspectul (layout) unei pagini, în funcție de orientarea browserului.
Puteți avea un set de proprietăți CSS care se vor aplica numai atunci când fereastra browserului este mai largă decât înălțimea sa, o așa-numită orientare „Peisaj” (Landscape):
Utilizați o culoare de fundal lightblue (background color) dacă orientarea este în modul peisaj (landscape):
Folosind o valoare suplimentară: adăugăm o interogare media suplimentară la cea existentă folosind virgulă (aceasta se va comporta ca un operator OR).

CSS Responsive Web Design - Viewport

Responsive Web Design - Viewport
Ce este Viewport?
Viewport este zona vizibilă a utilizatorului unei pagini web.
Viewportul variază în funcție de dispozitiv și va fi mai mic pe un telefon mobil decât pe un ecran al computerului.
Înainte de tablete și telefoane mobile, paginile web erau concepute doar pentru ecranele computerului și era comun ca paginile web să aibă un design static și o dimensiune fixă.
Apoi, când am început să navigăm pe internet folosind tablete și telefoane mobile, paginile web cu dimensiuni fixe erau prea mari pentru a se potrivi cu ecranul. Pentru a remedia acest lucru, browserele de pe aceste dispozitive au redus întreaga pagină web pentru a se potrivi ecranului.
Nu a fost perfect !! Dar o rezolvare rapidă.
Setarea Viewport
HTML5 a introdus o metodă pentru a permite proiectanților web să preia controlul asupra viewport-ului, prin intermediul etichetei <meta>.
Ar trebui să includeți următorul element viewport <meta> în toate paginile dvs. web.
Un element viewport <meta> oferă instrucțiuni browserului cu privire la modul de control al dimensiunilor și scalării paginii.
width=device-width part stabilește lățimea paginii pentru a urma lățimea ecranului dispozitivului (screen-width) (care va varia în funcție de dispozitiv).
initial-scale=1.0 setează nivelul inițial de zoom atunci când pagina este încărcată prima dată de browser.
Iată un exemplu de pagină web fără viewport meta tag și aceeași pagină web cu viewport meta tag.
Mărimea conținutului la Viewport (Size Content to The Viewport)
Utilizatorii sunt folosiți pentru a derula site-urile pe verticală atât pe desktop cât și pe dispozitive mobile - dar nu pe orizontală!
Așadar, dacă utilizatorul este obligat să defileze orizontal sau să mărească, pentru a vedea întreaga pagină web, rezultă o experiență slabă a utilizatorului.
Câteva reguli suplimentare de urmat:
NU folosiți elemente cu lățime fixă ​​mare - De exemplu, dacă o imagine este afișată la o lățime mai largă decât cea din portofoliu, aceasta poate determina derularea portofoliului pe orizontală. Nu uitați să ajustați acest conținut pentru a se încadra în lățimea vizualizării.
NU lăsați conținutul să se bazeze pe o anumită lățime a viewportului (viewport width) pentru a fi redat - Deoarece dimensiunile ecranului și lățimea în pixeli CSS variază foarte mult între dispozitive, conținutul nu ar trebui să se bazeze pe o anumită lățime a viewportului pentru a fi redat.
Utilizați interogări CSS media (media queries) pentru a aplica stiluri diferite pentru ecrane mici și mari - Setarea lățimilor CSS mari pentru elementele paginii va face ca elementul să fie prea larg pentru viewport de pe un dispozitiv mai mic. În schimb, luați în considerare utilizarea unor valori de lățime relative, cum ar fi lățimea: 100%. De asemenea, aveți grijă să folosiți valori mari de poziționare absolută. Poate determina elementul să iasă în afara ecranului pe dispozitive mici.

CSS Responsive Web Design - Grid-View

Responsive Web Design - Grid-View
Ce este un Grid-View?
Multe pagini web se bazează pe un grid-view, ceea ce înseamnă că pagina este împărțită în coloane.
Un responsive grid-view are adesea 12 coloane și are o lățime totală de 100% și se va micsora și se va extinde pe măsură ce redimensionați fereastra browserului.
Construirea unui responsive Grid-View
Vom începe să construim un responsive Grid-View.
Mai întâi asigurați-vă că toate elementele HTML au proprietatea box-sizing setată pe border-box. Acest lucru asigură că padding și border sunt incluse în lățimea totală și înălțimea (total width and height) elementelor.

CSS Responsive Web Design - Interogări media

Responsive Web Design - Interogări media
Ce este o interogare media?
Interogarea media este o tehnică CSS introdusă în CSS3.
Utilizează regula @media pentru a include un block de proprietăți CSS numai dacă o anumită condiție este adevărată.
Dacă fereastra browserului este de 600px sau mai mică, culoarea de fundal (background color) va fi deschisă la culoare (lightblue).
Adăugați un Breakpoint
Mai devreme în acest tutorial am făcut o pagină web cu rânduri și coloane și a fost responzive, dar nu arăta bine pe un ecran mic.
Interogările media (media queries) vă pot ajuta. Putem adăuga un punct de break (breakpoint) unde anumite părți ale designelui se vor comporta diferit pe fiecare parte a punctului de break (breakpoint).
Utilizați o interogare media (media queries) pentru a adăuga un punct de break (breakpoint) la 768px:
Când ecranul (fereastra browserului) devine mai mic decât 768px, fiecare coloană ar trebui să aibă o lățime de 100%.
Întotdeauna design pentru mobil întâi
Mobile First înseamnă proiectare pentru mobil înainte de proiectare pentru desktop sau orice alt dispozitiv (Acest lucru va face afișarea paginii mai rapidă pe dispozitive mai mici).
Aceasta înseamnă că trebuie să facem unele modificări în CSS-ul nostru.
În loc să schimbăm stilurile când lățimea devine mai mică de 768px, ar trebui să schimbăm designul când lățimea devine mai mare de 768px. Acest lucru va face în primul rând proiectarea noastră mobilă.
Puteți adăuga câte breakpoints doriți.
Vom insera, de asemenea, un punct de break (breakpoint) între tablete și telefoane mobile.
Facem acest lucru prin adăugarea a încă o interogare media (media query ) (la 600px) și un set de clase noi pentru dispozitive mai mari de 600px (dar mai mici decât 768px):
Rețineți că cele două seturi de clase sunt aproape identice, singura diferență este denumirea (col- și col-s-).
Breakpoints tipice dispozitivului (Typical Device Breakpoints)
Există tone de ecrane și dispozitive cu înălțimi și lățimi diferite, așa că este greu să creezi un punct de break (breakpoint) exact pentru fiecare dispozitiv. Pentru a menține lucrurile simple, puteți viza cinci grupuri.
Orientare: Portret / Peisaj (Landscape)
Interogările media (media queries) pot fi, de asemenea, utilizate pentru a schimba aspectul (layout) unei pagini, în funcție de orientarea browserului.
Puteți avea un set de proprietăți CSS care se vor aplica numai atunci când fereastra browserului este mai largă decât înălțimea sa, o așa-numită orientare „Peisaj” (Lanscape):
Pagina web va avea un fundal luminos (lightblue background) dacă orientarea este în modul peisaj (lanscape).
Ascundeți elementele cu interogări media (Hide Elements With Media Queries)
O altă utilizare obișnuită a interogărilor media (media queries) este de a ascunde elemente pe dimensiuni diferite de ecran.
Modificați dimensiunea fontului cu interogări media (Change Font Size With Media Queries)
De asemenea, puteți utiliza interogări media (media queries) pentru a modifica dimensiunea fontului unui element pe diferite dimensiuni ale ecranului.

CSS Responsive Web Design - Imagini

Responsive Web Design - Images
Utilizarea proprietății Width
Dacă proprietatea lățimii (width) este setată la un procent și înălțimea este setată la „auto”, imaginea va fi receptivă și va scala în sus și în jos.
Imaginea poate fi redusă pentru a fi mai mare decât dimensiunea inițială. O soluție mai bună, în multe cazuri, va fi utilizarea în schimb a proprietății cu lățimea maximă.
Imaginile de fundal (Background Images) pot răspunde, de asemenea, la redimensionare și scalare (resizing și scaling).
Dacă proprietatea background-size este setată pe „contain”, imaginea de fundal (background Images) se va scala și va încerca să se potrivească zonei de conținut. Cu toate acestea, imaginea își va păstra raportul de aspect (relația proporțională între lățimea și înălțimea imaginii (width și height)).
Dacă proprietatea background-size este setată pe „100% 100%”, imaginea de fundal (background image) se va întinde pentru a acoperi întreaga zonă de conținut.
Dacă proprietatea background-size este setată pe „cover”, imaginea de fundal (background image) se va scala pentru a acoperi întreaga zonă de conținut. Observați că valoarea „cover” păstrează raportul de aspect (aspect ratio), iar o parte din imaginea de fundal (background image) poate fi tăiată.
Imagini diferite pentru dispozitive diferite
O imagine mare poate fi perfectă pe un ecran mare al unui computer, dar inutilă pe un dispozitiv mic. De ce să încărcați o imagine mare atunci când trebuie să o măriți în jos? Pentru a reduce încărcarea sau pentru orice alte motive, puteți utiliza interogări media (media queries) pentru a afișa imagini diferite pe dispozitive diferite.
Puteți utiliza interogarea media (media query) min-device-width, în loc de min-width, care verifică lățimea dispozitivului, în loc de lățimea browserului. Atunci imaginea nu se va schimba când redimensionați fereastra browserului.
Elementul HTML5 <picture>
HTML5 a introdus elementul <picture>, care vă permite să definiți mai multe imagini.
Asistență browser (Browser Support)
Elementul <picture> funcționează similar cu elementele <video> și <audio>. Configurați surse diferite, iar prima sursă care se potrivește preferințelor este cea utilizată:
Atributul srcset este necesar și definește sursa imaginii.
Atributul media este opțional și acceptă interogările media (media queries) pe care le găsiți în regula CSS @media.
De asemenea, ar trebui să definiți un element <img> pentru browserele care nu acceptă elementul <picture>.

CSS Grid Introducere

CSS Grid Layout Module
Grid Layout
CSS Grid Layout Module oferă un sistem de dispunere bazat pe grilă, cu rânduri și coloane, ceea ce facilitează proiectarea paginilor web fără a fi nevoie să folosiți plutitoare și poziționare (floats și positioning).
Asistență browser(Browser Support)
Proprietățiile grid sunt acceptate în toate browserele moderne.
Elemente grid
Un layout grid este format dintr-un element părinte, cu unul sau mai multe elemente copil.
Proprietatea display
Un element HTML devine un container grid atunci când proprietatea sa display este setată pe grid sau în inline-grid.
Toți copiii direcți (direct children) ai containerului grid devin automat elemente grid.
Coloane Grid (Grid Columns)
Liniile verticale ale elementelor grid se numesc coloane (columns).
Rânduri Grid (Grid Rows)
Liniile orizontale ale elementelor grid se numesc rânduri (rows).
Grid Gaps
Spațiile dintre fiecare coloană/rând (column/row) se numesc gaps.
Puteți ajusta dimensiunea gapului folosind una dintre următoarele proprietăți:grid-column-gap, grid-row-gap, grid-gap.
Proprietatea grid-column-gap stabilește diferența dintre coloane.
Proprietatea grid-row-gap stabilește diferența dintre rânduri.
Proprietatea grid-gap este o proprietate shorthand pentru proprietățile grid-column-gap și grid-row-gap.
Proprietatea grid-gap poate fi, de asemenea, folosită pentru a seta atât row gap cât și column gap într-o singură valoare.
Linii Grid (Grid Lines)
Liniile dintre coloane se numesc linii coloană (column lines).
Liniile dintre rânduri se numesc linii rând (row lines).
Consultați numerele de linie atunci când introduceți un element grid într-un container grid.
Plasați un element grid la linia coloanei 1 și lăsați-o să se încheie pe linia 3 a coloanei.
Plasați un element grid la linia 1 de rând și lăsați-o să se încheie pe linia 3 de rând.
 

CSS Grid Container

Grid Container
Pentru a face ca un element HTML să se comporte ca un container grid, trebuie să setați proprietatea display la grid sau la inline-grid.
Containerele grid constau din elemente grid, plasate în coloane și rânduri (columns și rows).
Proprietatea grid-template-columns
Proprietatea grid-template-columns definește numărul de coloane din aspectul gridului dvs. (grid layout) și poate defini lățimea (width) fiecărei coloane.
Valoarea este un space-separated-list, unde fiecare valoare definește lungimea coloanei respective.
Dacă doriți ca aspectul gridului (grid layout) să conțină 4 coloane, specificați lățimea (width) celor 4 coloane sau „auto” dacă toate coloanele trebuie să aibă aceeași lățime (width).
Proprietatea grid-template-rows definește înălțimea (height) fiecărui rând (row).
Valoarea este un space-separated-list, unde fiecare valoare definește înălțimea (height) rândului respectiv (row).
Proprietatea justify-content este utilizată pentru alinierea întregului grid în interiorul containerului.
Lățimea (width) totală a gridului trebuie să fie mai mică decât lățimea (width) containerului pentru ca proprietatea justify-content să aibă vreun efect.
Proprietatea align-content este utilizată pentru alinierea verticală (vertically align) a întregului grid în interiorul containerului.
Înălțimea (height) totală a gridului trebuie să fie mai mică decât înălțimea (height) containerului pentru ca proprietatea align-content să aibă vreun efect.

CSS Grid Item

CSS Grid Item
Child Elements (Items)
Un container grid conține elemente grid.
În mod implicit, un container are un articol grid pentru fiecare coloană, în fiecare rând, dar puteți stila elementele gridului astfel încât acestea să se întindă pe mai multe coloane și / sau rânduri.
Proprietatea grid-column:
Proprietatea grid-column definește pe ce coloane (ele) să plaseze un articol.
Definiți unde va începe elementul și unde se va termina.
Proprietatea grid-column este o proprietate shorthand pentru proprietățiile grid-column-start și grid-column-end.
Pentru a plasa un articol, vă puteți referi la numere de linie sau puteți utiliza cuvântul cheie „span” pentru a defini câte coloane va cuprinde.
Proprietatea grid-row
Proprietatea grid-row definește pe ce rând să plaseze un element.
Definiți unde va începe elementul și unde se va termina.
Proprietatea grid-row este o proprietate shorthand pentru proprietățiile grid-row-start și grid-row-end.
Pentru a plasa un articol, vă puteți referi la numere de linie sau puteți utiliza cuvântul cheie „span” pentru a defini câte rânduri va cuprinde elementul.
Proprietatea grid-area
Proprietatea grid-area poate fi utilizată ca proprietate de tip shorthand pentru proprietățiile grid-row-start, grid-column-start, grid-row-end și the grid-column-end.
Denumirea elementelor grid
Proprietatea grid-area poate fi, de asemenea, utilizată pentru a atribui nume elementelor grid.
Elementele grid denumite (Named grid items) pot fi menționate de proprietatea grid-template-areas ale containerului grid.
Fiecare rând este definit prin apostroafe ('')
Coloanele din fiecare rând sunt definite în interiorul apostrofelor, separate de un spațiu.
Un semn de perioadă reprezintă un element grid fără nume.
Pentru a defini două rânduri, definiți coloana celui de-al doilea rând în interiorul unui alt set de apostroafe.
The Order of the Items
Aspectul gridului (Grid Layout) ne permite să poziționăm articolele oriunde ne-ar plăcea.
Primul articol din codul HTML nu trebuie să apară ca prim element din grid.

SQL JOIN

SQL JOIN
O clauză JOIN este utilizată pentru a combina rânduri din două sau mai multe tabele, pe baza unei coloane înrudite între ele.
Selecție din tabelul „Orders”:
Selecție din tabelul „Customers”:
Coloana „CustomerID” din tabelul „Orders” se referă la „CustomerID” din tabelul „Customers”. Relația dintre cele două tabele de mai sus este coloana „CustomerID”.
Putem crea următoarea instrucțiune SQL (care conține un INNER JOIN), care selectează înregistrările care au valori potrivite în ambele tabele:
SELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID=Customers.CustomerID;
Diferite tipuri de SQL JOINs
Iată diferitele tipuri de JOINs în SQL:
(INNER) JOIN: returnează înregistrările care au valori potrivite în ambele tabele
LEFT (OUTER) JOIN: returnează toate înregistrările din tabelul din stânga și înregistrările potrivite din tabelul din dreapta
RIGHT (OUTER) JOIN: returnează toate înregistrările din tabelul din dreapta și înregistrările potrivite din tabelul din stânga
FULL (OUTER) JOIN: returnează toate înregistrările atunci când există o potrivire în tabelul din stânga sau din dreapta

SQL INNER JOIN

SQL INNER JOIN
SQL Cuvântul cheie INNER JOIN
Cuvântul cheie INNER JOIN selectează înregistrările care au valori potrivite în ambele tabele.
Sintaxa INNER JOIN
SELECT column_name(s)
FROM table1
INNER JOIN table2
ON table1.column_name = table2.column_name;
Exemplu SQL INNER JOIN
Următoarea instrucțiune SQL selectează toate comenzile cu informații despre client (customer):
SELECT Orders.OrderID, Customers.CustomerName
FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID;
Cuvântul cheie INNER JOIN selectează toate rândurile din ambele tabele, atâta timp cât există o potrivire între coloane. Dacă există înregistrări în tabelul „Orders” care nu au potriviri în „Customers”, aceste comenzi nu vor fi afișate!
JOIN Three Tables
Următoarea declarație SQL selectează toate comenzile cu informații despre client și expeditor (customer and shipper):
SELECT Orders.OrderID, Customers.CustomerName, Shippers.ShipperName
FROM ((Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID)
INNER JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID);

SQL LEFT JOIN

SQL LEFT JOIN
Cuvântul cheie SQL LEFT JOIN
Cuvântul cheie LEFT JOIN returnează toate înregistrările din tabelul din stânga (table1), si înregistrările potrivite din tabelul din dreapta (table2). Dacă nu există nicio potrivire din partea dreaptă rezultatul este NULL.
LEFT JOIN Syntax
SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name = table2.column_name;
În unele baze de date LEFT JOIN se numește LEFT OUTER JOIN.
Exemplu SQL LEFT JOIN
Următoarea instrucțiune SQL va selecta toți clienții (customers) și orice comenzi (orders) ar putea avea:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders ON Customers.CustomerID = Orders.CustomerID
ORDER BY Customers.CustomerName;
Cuvântul cheie LEFT JOIN returnează toate înregistrările din tabelul din stânga (Clienți/Customers), chiar dacă nu există potriviri în tabelul din dreapta (Comenzi/Orders).

SQL RIGHT JOIN

SQL RIGHT JOIN
Cuvântul cheie SQL RIGHT JOIN
Cuvântul cheie RIGHT JOIN returnează toate înregistrările din tabelul din dreapta (table2), si înregistrările potrivite din tabelul din stânga (table1). Când nu există nici o potrivire rezultatul este NULL din partea stângă.
RIGHT JOIN Syntax
SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name = table2.column_name;
În unele baze de date, RIGHT JOIN se numește RIGHT OUTER JOIN.
Exemplu SQL RIGHT JOIN
Următoarea instrucțiune SQL va returna toți angajații și orice comenzi ar fi făcut:
Cuvântul cheie RIGHT JOIN returnează toate înregistrările din tabelul din dreapta (Angajați/Employees), chiar dacă nu există meciuri în tabelul din stânga (Comenzi/Orders).

SQL FULL OUTER JOIN

SQL FULL OUTER JOIN
Cuvântul cheie SQL FULL OUTER JOIN
Cuvântul cheie FULL OUTER JOIN returnează toate înregistrările atunci când există o potrivire în înregistrările tabelului stânga (tabel1) sau dreapta (tabel2).
FULL OUTER JOIN poate returna seturi de rezultate foarte mari!
FULL OUTER JOIN și FULL JOIN sunt aceleași.
FULL OUTER JOIN Syntax
SELECT column_name(s)
FROM table1
FULL OUTER JOIN table2
ON table1.column_name = table2.column_name
WHERE condition;
Exemplu SQL FULL OUTER JOIN
Următoarea instrucțiune SQL selectează toți clienții și toate comenzile:
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
FULL OUTER JOIN Orders ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;
Cuvântul cheie FULL OUTER JOIN returnează toate înregistrările de potrivire din ambele tabele, indiferent dacă celălalt tabel se potrivește sau nu. Așadar, dacă există „rânduri” (rows) în „Clienți” (Customers) care nu au potriviri în „Comenzi” (Orders) sau dacă există „rânduri” (rows) în „Comenzi” (Orders)  care nu au potriviri în „Clienți” (Customers), aceste rânduri vor fi listate și ele.

SQL Funcții NULL

Funcții SQL NULL
Funcții SQL IFNULL(), ISNULL(), COALESCE() și NVL()
Să presupunem că coloana "UnitsOnOrder" este opțională și poate conține valori NULL.
Următoarea declarație SELECT:
SELECT ProductName, UnitPrice * (UnitsInStock + UnitsOnOrder)
FROM Products;
În exemplul de mai sus, dacă oricare dintre valorile "UnitsOnOrder" este NULL, rezultatul va fi NULL.
Soluţii
MySQL
Funcția MySQL IFNULL() vă permite să returnați o valoare alternativă dacă o expresie este NULL:
SELECT ProductName, UnitPrice * (UnitsInStock + IFNULL(UnitsOnOrder, 0))
FROM Products;
sau putem folosi funcția COALESCE(), astfel:
SELECT ProductName, UnitPrice * (UnitsInStock + COALESCE(UnitsOnOrder, 0))
FROM Products;
SQL Server
Funcția SQL ISNULL() vă permite să returnați o valoare alternativă atunci când o expresie este NULL:
SELECT ProductName, UnitPrice * (UnitsInStock + ISNULL(UnitsOnOrder, 0))
FROM Products;
MS Access
Funcția MS Access IsNull() returnează TRUE (-1) dacă expresia este o valoare nulă, altfel returnează FALSE (0):
SELECT ProductName, UnitPrice * (UnitsInStock + IIF(IsNull(UnitsOnOrder), 0, UnitsOnOrder))
FROM Products;
Oracle
Funcția Oracle NVL() obține același rezultat:
SELECT ProductName, UnitPrice * (UnitsInStock + NVL(UnitsOnOrder, 0))
FROM Products;

SQL CREATE TABLE

SQL CREATE TABLE
Instrucțiunea SQL CREATE TABLE
Instrucțiunea CREATE TABLE este utilizată pentru a crea o nouă tabelă într-o bază de date.
Sintaxă
CREATE TABLE table_name (
    column1 datatype,
    column2 datatype,
    column3 datatype,
   ....
);
Parametrii coloanelor specifică numele coloanelor tabelului.
Parametrul datatype specifică tipul de date pe care le poate deține coloana (de exemplu, varchar, integer, date, etc.).
Exemplu SQL CREATE TABLE
Următorul exemplu creează un tabel numit „Persoane” (Persons) care conține cinci coloane: PersonID, LastName, FirstName, Address și City:
CREATE TABLE Persons (
    PersonID int,
    LastName varchar(255),
    FirstName varchar(255),
    Address varchar(255),
    City varchar(255)
);
Coloana PersonID este de tip int și va deține un numar intreg (integer).
Coloanele LastName, FirstName, Address și City sunt de tip varchar și vor conține caractere (characters), iar lungimea maximă pentru aceste câmpuri este de 255 de caractere.
Tabelul gol „Persoane” (Persons) poate fi completat acum cu date cu instrucțiunea SQL INSERT INTO.
Creați o tabelă folosind o altă tabelă
O copie a unui tabel existent poate fi, de asemenea, creată folosind CREATE TABLE.
Noul tabel primește aceleași definiții ale coloanei. Toate coloanele sau coloanele specifice pot fi selectate.
Dacă creați o nouă tabelă folosind o tabelă existentă, noua tabelă va fi completată cu valorile existente din tabelul vechi.
Sintaxă
CREATE TABLE new_table_name AS
    SELECT column1, column2,...
    FROM existing_table_name
    WHERE ....;
Următorul SQL creează un nou tabel numit "TestTables" (care este o copie a tabelului "Clienți" (Customers)):
CREATE TABLE TestTable AS
SELECT customername, contactname
FROM customers;

SQL Date

SQL Lucrând cu datele
Datele SQL
Partea cea mai dificilă atunci când lucrați cu datele este să vă asigurați că formatul datei pe care încercați să îl inserați se potrivește cu formatul coloanei de date din baza de date.
Atâta timp cât datele dvs. conțin doar porțiunea de date (date portion), întrebările dvs. vor funcționa așa cum vă așteptați. Cu toate acestea, dacă este implicată o porție de timp (time portion), devine mai complicat.
SQL Date Data Types
MySQL vine cu următoarele tipuri de date pentru stocarea date/time în baza de date:
DATE - format YYYY-MM-DD
DATETIME - format: YYYY-MM-DD HH:MI:SS
TIMESTAMP - format: YYYY-MM-DD HH:MI:SS
YEAR - format YYYY or YY
SQL Server vine cu următoarele tipuri de date pentru stocarea date/time în baza de date:
DATE - format YYYY-MM-DD
DATETIME - format: YYYY-MM-DD HH:MI:SS
SMALLDATETIME - format: YYYY-MM-DD HH:MI:SS
TIMESTAMP - format: a unique number (un număr unic)
Tipurile de date (date types) sunt alese pentru o coloană atunci când creați un nou tabel în baza de date!
SQL Lucrul cu date
Puteți compara ușor două date dacă nu este implicată o componentă de timp!
Presupunem că avem tabelul „Comenzi” (Orders):
Acum dorim să selectăm înregistrările cu OrderDate "2008-11-11" din tabel.
Folosim următoarea declarație SELECT:
SELECT * FROM Orders WHERE OrderDate='2008-11-11'
Dacă folosim aceeași declarație SELECT ca mai sus:
SELECT * FROM Orders WHERE OrderDate='2008-11-11'
nu vom obține niciun rezultat! Acest lucru se datorează faptului că interogarea caută doar date fără o porție de timp (time portion).
Pentru a vă menține întrebările simple și ușor de întreținut, nu permiteți componentele timpului în datele dvs.!

PHP Validare formular

Validare formular PHP
Acesta și capitolele următoare arată cum să folosești PHP pentru a valida datele formularului.
Validare formular PHP
Gândiți-vă la SECURITATE când prelucrați formularele PHP!
Aceste pagini vor arăta cum să procesați formularele PHP din punct de vedere al securitatii. Validarea corectă a datelor din formular este importantă pentru a vă proteja formularul de hackeri și spameri!
Formularul HTML la care vom lucra în aceste capitole, conține diferite câmpuri de introducere: câmpuri de text obligatorii și opționale, butoane radio și un buton de trimitere (required and optional text fields, radio buttons, and a submit button):
Name - Obligatoriu. + Trebuie să conțină doar litere și spațiu alb
E-mail - Obligatoriu. + Trebuie să conțină o adresă de e-mail validă (cu @ și.)
Website - Obligatoriu. Dacă este prezent, trebuie să conțină o adresă URL validă
Comment - Opțional. Câmp de introducere pe mai multe linii (textarea)
Sex - Obligatoriu. Trebuie să selectați una
Mai întâi vom analiza codul HTML simplu pentru formular:
Câmpuri text (Text Fields)
Câmpurile nume, e-mail și website sunt elemente de introducere ale textului (input elements), iar câmpul de comentarii este textarea. Codul HTML arată astfel:
Nume: <input type="text" name="name">
E-mail: <input type="text" name="email">
Website: <input type="text" name="website">
Comment: <textarea name="comment" rows="5" cols="40"></textarea>
Butoane radio (Radio Buttons)
Câmpurile gen (gender fields) sunt butoane radio, iar codul HTML arată astfel:
Gen:
<input type="radio" name="gender" value="female">Femeie
<input type="radio" name="gender" value="male">Bărbat
<input type="radio" name="gender" value="other">Altele
Elementul form (The Form Element)
Codul HTML al formularului arată astfel:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Când formularul este trimis, datele formularului sunt trimise cu method = "post".
Ce este variabila $_SERVER["PHP_SELF"] ?
$_SERVER["PHP_SELF"] este o variabilă super globală care returnează numele de fișier al scriptului care se execută în prezent.
Așadar, $_SERVER["PHP_SELF"] trimite datele formularului (submitted form data) trimis către pagina în sine, în loc să sară pe o altă pagină. În acest fel, utilizatorul va primi mesaje de eroare pe aceeași pagină ca și formularul.
Ce este funcția htmlspecialchars()?
Funcția htmlspecialchars() convertește caracterele speciale în entități HTML. Aceasta înseamnă că va înlocui caractere HTML precum <and> cu &lt; și &gt;. Acest lucru împiedică atacatorii să exploateze codul prin injectarea codului HTML sau a javascriptului (Cross-site Scripting attacks) în formulare.
Notă imporantă privind securitatea formularului PHP
Variabila $_SERVER["PHP_SELF"] poate fi utilizată de hackeri!
Dacă PHP_SELF este utilizat în pagina dvs., un utilizator poate introduce un slash (/) și apoi unele comenzi de Cross Site Scripting (XSS) pentru a executa.
Scripturi încrucișate (Cross-site scripting) (XSS) este un tip de vulnerabilitate a securității computerului care se găsește de obicei în aplicațiile Web. XSS le permite atacatorilor să injecteze scripturi din partea clientului în paginile Web vizualizate de alți utilizatori.
Presupunem că avem următorul formular într-o pagină numită "test_form.php":
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];?>">
Acum, dacă un utilizator introduce URL-ul normal în bara de adrese precum "http://www.example.com/test_form.php", codul de mai sus va fi tradus în:
<form method="post" action="test_form.php">
Până acum, bine.
Cu toate acestea, considerați că un utilizator introduce următoarea adresă URL în bara de adrese:
http://www.example.com/test_form.php/%22%3E%3Cscript%3Ealert('hacked')%3C/script%3E
În acest caz, codul de mai sus va fi tradus în:
<form method="post" action="test_form.php/"><script>alert('hacked')</script>
Acest cod adaugă o etichetă script (script tag) și o comandă de alertă (alert command). Și atunci când pagina se încarcă, codul JavaScript va fi executat (utilizatorul va vedea o casetă de alertă (alert box)). Acesta este doar un exemplu simplu și inofensiv cum poate fi exploatată variabila PHP_SELF.
Fiți conștienți de faptul că orice cod JavaScript poate fi adăugat în eticheta <script>! Un hacker poate redirecționa utilizatorul către un fișier de pe alt server, iar respectivul fișier poate conține cod rău intenționat care poate modifica variabilele globale sau poate trimite formularul la o altă adresă pentru a salva datele utilizatorului, de exemplu.
Cum să evitați exploatările $_SERVER["PHP_SELF"]?
Exploatările $_SERVER["PHP_SELF"] pot fi evitate folosind funcția htmlspecialchars().
Codul formularului ar trebui să arate astfel:
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
Funcția htmlspecialchars() convertește caracterele speciale în entități HTML. Acum, dacă utilizatorul încearcă să exploateze variabila PHP_SELF, va rezulta următoarea ieșire (output):
<form method="post" action="test_form.php/&quot;&gt;&lt;script&gt;alert('hacked')&lt;/script&gt;">
Validați datele formularului cu PHP
Primul lucru pe care îl vom face este să trecem toate variabilele prin funcția PHP htmlspecialchars().
Când folosim funcția htmlspecialchars(); atunci dacă un utilizator încearcă să trimită următoarele într-un câmp text:
<script>location.href('http://www.hacked.com')</script>
- acest lucru nu ar fi executat, deoarece va fi salvat ca și cod HTML scăpat, astfel:
&lt;script&gt;location.href('http://www.hacked.com')&lt;/script&gt;
Codul este acum sigur pentru a fi afișat pe o pagină sau în interiorul unui e-mail.
De asemenea, vom face alte două lucruri atunci când utilizatorul va trimite formularul:
Scoateți caracterele inutile (spațiu suplimentar, filă, linie nouă (extra space, tab, newline)) din datele de intrare ale utilizatorului (cu funcția PHP trim() )
Eliminați backslashes (\) din datele de intrare ale utilizatorului (cu funcția PHP stripslashes())Următorul pas este să creem o funcție care să facă toate verificările pentru noi (ceea ce este mult mai convenabil decât scrierea aceluiași cod încă o dată).
Vom numi funcția test_input().
Acum, putem verifica fiecare variabilă $_POST cu funcția test_input(), iar scriptul va arata astfel:
<?php
// definiți variabilele și setați valorile goale
$name = $email = $gender = $comment = $website = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = test_input($_POST["name"]);
  $email = test_input($_POST["email"]);
  $website = test_input($_POST["website"]);
  $comment = test_input($_POST["comment"]);
  $gender = test_input($_POST["gender"]);
}
function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>
Observați că la începutul scriptului, verificăm dacă formularul a fost trimis folosind $_SERVER ["REQUEST_METHOD"]. Dacă REQUEST_METHOD este POST, atunci formularul a fost trimis - și ar trebui validat. Dacă nu a fost trimis, săriți validarea și afișați un formular necompletat.
Cu toate acestea, în exemplul de mai sus, toate câmpurile de introducere sunt opționale. Scriptul funcționează bine chiar dacă utilizatorul nu introduce date.
Următorul pas este de a face necesare câmpurile de intrare și de a crea mesaje de eroare, dacă este nevoie.

PHP Formular complet

Exemplu de formular complet PHP (PHP Complete Form Example)
Acest capitol arată cum să păstrați valorile în câmpurile de introducere (input fields) atunci când utilizatorul apasă butonul de trimitere (submit button).
PHP - Păstrați valorile în formular
Pentru a afișa valorile din câmpurile de intrare (input fields) după ce utilizatorul apasă pe butonul de trimitere (submit button), adăugăm puțin script PHP în interiorul valorii atributului (value attribute) al următoarelor câmpuri de intrare (input fields): nume, e-mail și site-ul web (name, email, and website). În câmpul textarea (textarea field) comment, am pus scriptul între etichetele (tags)<textarea> și </textarea>. Micul script produce (outputs) valoarea variabilelor $name, $email, $website și $comment.
Apoi, trebuie să arătăm și ce buton radio (radio button) a fost bifat. Pentru aceasta, trebuie să manipulăm atributul bifat (checked attribute) (nu atributul valoare pentru butoanele radio) (radio buttons):
Nume: <input type="text" name="name" value="<?php echo $name;?>">
E-mail: <input type="text" name="email" value="<?php echo $email;?>">
Website: <input type="text" name="website" value="<?php echo $website;?>">
Comentariu: <textarea name="comment" rows="5" cols="40"><?php echo $comment;?></textarea>
Gen:
<input type="radio" name="gender"
<?php if (isset($gender) && $gender=="female") echo "checked";?>
value="female">Femeie
<input type="radio" name="gender"
<?php if (isset($gender) && $gender=="male") echo "checked";?>
value="male">Bărbat
<input type="radio" name="gender"
<?php if (isset($gender) && $gender=="other") echo "checked";?>
value="other">Altele

PHP - OOP

PHP - OOP
PHP - Ce este OOP?
De la PHP5, puteți scrie și cod PHP într-un stil orientat pe obiecte (object-oriented style).
Programarea orientată pe obiecte (Object-Oriented programming) este mai rapidă și mai ușor de executat.
PHP Ce este OOP?
OOP înseamnă programare orientată pe obiecte (Object-Oriented Programming).
Programarea procedurală (Procedural programming) se referă la scrierea procedurilor sau a funcțiilor care efectuează operațiuni asupra datelor, în timp ce programarea orientată pe obiect (object-oriented programming) este despre crearea de obiecte care conțin atât date cât și funcții.
Programarea orientată pe obiecte (object-oriented programming) are mai multe avantaje față de programarea procedurală (procedural programming):
OOP este mai rapid și mai ușor de executat
OOP oferă o structură clară pentru programe
OOP ajută la păstrarea codului PHP DRY „Nu vă repetați” (Don't Repeat Yourself) și face codul mai ușor de întreținut, modificat și depanat
OOP face posibilă crearea de aplicații reutilizabile complete, cu mai puțin cod și timp de dezvoltare mai scurt
Principiul „Nu vă repetați” (Don't Repeat Yourself) (DRY) se referă la reducerea repetării codului. Ar trebui să extrageți codurile care sunt comune pentru aplicație și să le așezați într-un singur loc și să le reutilizați în loc să le repetați.
PHP - Ce sunt clasele și obiectele?
Clasele și obiectele sunt cele două aspecte principale ale programării orientate pe obiecte (object-oriented programming).
Diferența dintre clasă și obiecte.
O clasă este un șablon pentru obiecte (template for objects), iar un obiect este o instanță a unei clase.
Când obiectele individuale sunt create, moștenesc toate proprietățiile și comportamentele din clasă, dar fiecare obiect va avea valori diferite pentru proprietăți.
Uitați-vă la capitolele următoare pentru a afla mai multe despre OOP.

AJAX Poll

PHP - Sondaj AJAX
Sondaj AJAX
Următorul exemplu va demonstra un sondaj în care rezultatul este afișat fără reîncărcare.
Exemplu explicat - Pagina HTML
Când un utilizator alege o opțiune, se execută o funcție numită "getVote()". Funcția este declanșată de evenimentul "onclick":
<html>
<head>
<script>
function getVote(int) {
  if (window.XMLHttpRequest) {
    // cod pentru IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
  } else {  // cod pentru IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  xmlhttp.onreadystatechange=function() {
    if (this.readyState==4 && this.status==200) {
      document.getElementById("poll").innerHTML=this.responseText;
    }
  }
  xmlhttp.open("GET","poll_vote.php?vote="+int,true);
  xmlhttp.send();
}
</script>
</head>
<body>
<div id="poll">
<h3>Până acum vă plac PHP și AJAX?</h3>
<form>
Da:
<input type="radio" name="vote" value="0" onclick="getVote(this.value)">
<br>Nu:
<input type="radio" name="vote" value="1" onclick="getVote(this.value)">
</form>
</div>
</body>
</html>
Funcția getVote() face următoarele:
Creați un obiect XMLHttpRequest
Creați funcția care trebuie executată atunci când răspunsul serverului este gata
Trimiteți cererea dezactivată unui fișier de pe server
Observați că la URL se adaugă un parametru (vote) (cu valoarea opțiunii da sau nu)
Fișierul PHP
Pagina de pe server numită de JavaScript-ul precedent este un fișier PHP numit "poll_vote.php":
<?php
$vote = $_REQUEST['vote'];
//obțineți conținutul fișierului text (textfile)
$filename = "poll_result.txt";
$content = file($filename);
//puneți conținutul în tablou (array)
$array = explode("||", $content[0]);
$yes = $array[0];
$no = $array[1];
if ($vote == 0) {
  $yes = $yes + 1;
}
if ($vote == 1) {
  $no = $no + 1;
}
// introduceți voturi în fișierul txt (txt file)
$insertvote = $yes."||".$no;
$fp = fopen($filename,"w");
fputs($fp,$insertvote);
fclose($fp);
?>
<h2>Rezultat:</h2>
<table>
<tr>
<td>Da:</td>
<td>
<img src="poll.gif"
width='<?php echo(100*round($yes/($no+$yes),2)); ?>'
height='20'>
<?php echo(100*round($yes/($no+$yes),2)); ?>%
</td>
</tr>
<tr>
<td>Nu:</td>
<td>
<img src="poll.gif"
width='<?php echo(100*round($no/($no+$yes),2)); ?>'
height='20'>
<?php echo(100*round($no/($no+$yes),2)); ?>%
</td>
</tr>
</table>
Valoarea este trimisă de la JavaScript și se întâmplă următoarele:
Obțineți conținutul fișierului "poll_result.txt"
Puneți conținutul fișierului în variabile și adăugați unul la variabila selectată
Scrieți rezultatul în fișierul "poll_result.txt"
Prezentați o reprezentare grafică a rezultatului sondajului
Fișierul text
Fișierul text (poll_result.txt) este locul în care stocăm datele din sondaj.
Primul număr reprezintă voturile „Da”, al doilea număr reprezintă voturile „Nu”.
Nu uitați să permiteți serverului dvs. Web să editeze fișierul text. NU acorda acces tuturor, doar serverului web (PHP).

Oxizi

Structura, formula generală și nomenclatura oxizilor; oxizi acizi, oxizi bazici, oxizi amfoteri și oxizi indiferenți; proprietăți și metode generale de obținere a oxizilor.

Acizi

Definirea acizilor conform teoriei disociației electrolitice și a teoriei protolitice; hidracizi și oxoacizi; radicali acizi; formula generală și nomenclatura acizilor; proprietățile și reacțiile chimice specifice acizilor; ionizarea acizilor; metode generale de obținere a acizilor. 

Baze

Definirea bazelor conform teoriei disociației electrolitice și teoriei protolitice; formula generală și nomenclatura bazelor; proprietățile și reacțiile chimice specifice bazelor; ionizarea bazelor; metode generale de obținere a bazelor. 

Săruri

Structura și formula generală a sărurilor; săruri neutre, săruri acide și săruri bazice; nomenclatura sărurilor; proprietățile și reacțiile chimice ale sărurilor; metode generale de obținere a sărurilor; neutralizare și hidroliză. 

Hidrogenul

Caracteristici generale ale hidrogenului; formarea ionului de hidrură, H-, și formarea ionului de hidrogen (proton), H+. Răspândirea hidrogenului în natură. Metode de preparare a hidrogenului. Proprietățile fizice și chimice ale hidrogenului. Hidruri. Ortohidrogen și parahidrogen. Hidrogenul atomic. Întrebuințările hidrogenului. Izotopii hidrogenului (protiu, deuteriu, tritiu). 

Apa

Răspândirea apei în natură. Purificarea apei - sedimentare, filtrare, sterilizare. Apele industriale. Distiliarea apei. Apa higroscopică. Proprietățile fizice ale apei. Structura moleculei de apă. Proprietățile chimice ale apei. Hidrați.  

Grupa 18 sau grupa a VIII-a principală

Grupa a VIII-a principală, numerotată VIII A sau 18, cuprinde gazele rare (nobile) heliu, He, neon, Ne, argon, Ar, kripton, Kr, xenon, Xe, radon, Rn. 

 

Grupa 17 sau grupa a VII-a principală

Grupa a VII-a principală, numerotată VII A sau 17, numită și grupa halogenilor, conține următoarele elemente: fluor, F, clor, Cl, brom, Br, iod, I, astatin, At.
 

Grupa 15 sau grupa a V-a principală

Grupa a V-a principală a sistemului periodic, numerotată V A sau 15, cuprinde următoarele elemente: azot, N, fosfor, P, arsen, As, stibiu (antimoniu), Sb, și bismut, Bi. 
 

Grupa 14 sau grupa a IV-a principală

Grupa a IV-a principală a sistemului periodic, numerotată IV A sau 14, cuprinde elementele carbon, C, siliciu, Si, germaniu, Ge, staniu, Sn, și plumb, Pb. 

Grupa 13 sau grupa a III-a principală

Grupa a III-a principală a sistemului periodic, numerotată III A sau 13, cuprinde elementele bor, B, aluminiu, Al, galiu, Ga, indiu, In, și taliu, Tl. 

Grupa 2 sau grupa a II-a principală

Grupa a II-a principală a sistemului periodic, numerotată II A sau 2, cuprinde elementele: beriliu, Be, magneziu, Mg, calciu, Ca, stronțiu, Sr, bariu, și radiu, Ra. Această grupă se mai numește grupa metalelor alcalino-pământoase. 

Grupa 3 sau grupa a III-a secundară

Grupa a III-a secundară a sistemului periodic, numerotată III B sau 3, cuprinde elementele rare scandiu, Sc, ytriu, Y, și lantan, La, precum și elementul radioactiv actiniu, Ac. 

 

Grupa 4 sau grupa a IV-a secundară

Grupa a IV-a secundară a sistemului periodic, numerotată IV B sau 4, cuprinde elementele rare titan, Ti, zirconiu, Zr, și hafniu, Hf. 

Grupa 5 sau grupa a V-a secundară

Grupa a V-a secundară a sistemului periodic, numerotată V B sau 5, cuprinde elementele rare vanadiu, V, niobiu, Nb, și tantal, Ta.

Grupa 7 sau grupa a VII-a secundară

Grupa a VII-a secundară a sistemului periodic, numerotată VII B sau 7, cuprinde elementele mangan, Mn, technețiul, Tc, și reniu, Re. 

Grupa 9 sau grupa a VIII-a secundară

Grupa 9 a sistemului periodic, în trecut considerată parte a grupei a VIII-a secundare alături de grupele 8 și 10, cuprinde elementele cobalt, Co, rodiu, Rh, și iridiu, Ir. 

Grupa 10 sau grupa a VIII-a secundară

Grupa 10 a sistemului periodic, în trecut considerată parte a grupei a VIII-a secundare, alături de grupele 8 și 9, cuprinde elementele nichel, Ni, paladiu, Pd, și platină, Pt. 

Despre Lecții-Virtuale.ro

Lecții-Virtuale este o platformă educațională care oferă suport în vederea pregătirii pentru Evaluare Națională și Bacalaureat la Matematică, Fizică și Chimie. Lecțiile noastre sunt alcătuite din filme și exerciții și probleme cu tot cu rezolvări. Platforma noastră este o soluție ideală pentru școala online. Pentru facilitarea activității profesorilor în cadrul ecosistemului GSuite de la Google am implementat butonul Google Classroom. Scopul nostru este să ne concentrăm pe prezentarea noțiunilor și fenomenelor într-o manieră care să stimuleze înțelegerea și nu memorarea mecanică. Ne propunem să facilităm accesul la conținut educațional de calitate mai ales elevilor cu venituri mai modeste care nu își pemit meditații particulare. Sperăm să vă simțiti bine alături de noi și să invățați lucruri folositoare. Hai România!

Newsletter

Abonează-te la Newsletter pentru a fi la curent cu toate ofertele noastre.

Parteneri

EduApps partener Lectii Virtuale UiPath partener Lectii Virtuale Scoala365 partener Lectii Virtuale CCD Galați partener Lectii Virtuale

2024 © Lecții-virtuale.ro Toate drepturile rezervate
Termeni   Despre   Contact   Confidenţialitate   Cariere Parteneri