Funcția de rotație CSS: rotația 2D a unui element. Rotiți textul la un unghi dat folosind CSS

Proprietate Transformarea CSS(din cuvântul „transformare”) vă permite să modificați un element din paginile HTML. De exemplu, poți

  • roti
  • deplasa
  • schimba scara
  • cant
  • combinați pașii de mai sus

Datorită acestei proprietăți, puteți crea efecte interesante fără utilizarea JavaScript, care vă permite să accelerați browserul. De asemenea, este important să rețineți că este posibil să combinați efectul cu întârzieri de timp.

1. Sintaxa de transformare CSS

transform : transform1 [transform2 ];

Mai multe acțiuni cu un obiect sunt permise simultan (de exemplu, rotiți, deplasați și schimbați scara).

O notă despre browsere

Nu toate browserele acceptă transformarea. Trebuie să utilizați prefixele CSS ale furnizorului:

  • -ms-transform - pentru IE9 și mai vechi (sub versiunea 9, transformarea nu este acceptată
  • -webkit-transform - pentru Chrome, Safari, Android și iOS
  • -o-transform - pentru Opera până la versiunea 12.10
  • -moz-transform - pentru Firefox până la versiunea 16.0

2. transform:rotate(x) - rotirea obiectului

Pentru a roti un element există o comandă rotate(x) . Vă permite să rotiți un obiect cu x grade în sensul acelor de ceasornic sau în sens invers acelor de ceasornic. Valoarea x trebuie specificată în grade grade

Exemplul #1. Rotirea unui obiect în html prin transformare

înălțime: 100px;

fundal :#444 ;

margine: 30px;

-ms-transform : rotire (20deg ); -webkit-transform : rotire (20deg );-o-transform : rotire (20deg );

-moz-transform : rotire (20deg );

transformare: rotire(20deg);

înălțime: 100px;

fundal :#888 ;

margine: 30px;

-ms-transform : rotire (20deg ); -webkit-transform : rotire (20deg );-o-transform : rotire (20deg ); -moz-transform : rotire (20deg ); transformare: rotire(20deg);

înălțime: 100px;

Dar această rotație are loc brusc și nu pare „spectaculos”. Acest lucru poate fi rezolvat cu ușurință prin netezire. Următorul exemplu va implementa animația.

Exemplul #3. Rotire lină la hover (animație) în html

Pentru o rotație lină (sau, cu alte cuvinte, netezire), trebuie să setați încă o proprietate de tranziție. Această proprietate este responsabilă pentru efectul de sincronizare și de netezire. ÎN

în acest exemplu

înălțime: 100px;

viteza liniară liniar.kvadrat3 ( // fără lățime de rotație : 100 px ; înălțime : 100 px ; fundal : # 444 ; margine : 30 px ; tranziție : toate 1s liniare ; // netezire -webkit-transition : toate 1s liniare ; -o-transition : toate 1s liniară ; -moz-tranziție : toate 1s linear .kvadrat3:hover ( // ;

lățime: 100px;

Dacă trebuie să aplicați o transformare de-a lungul uneia dintre axe, atunci puteți utiliza un caz mai special: translateX(x) - X offset, translateY(y) - Y offset.

4. transform:scale(x,y) - scalarea obiectului

Comanda pentru scalarea unui obiect este scale(x,y) , unde argumentele din paranteze sunt scalarea de-a lungul axelor X, respectiv Y.

Exemplul #5. Scalarea obiectelor în html

înălțime: 100px;

Când plutește, pătratul devine mai mare pe orizontală cu 50% (coeficient 1,5) și pe verticală cu 30% (coeficient 1,3). O valoare de 1 înseamnă că nu există scalare. Orice mai mic de 1 va însemna că obiectul devine mai mic.

lățime: 100px;

Dacă trebuie să aplicați o transformare de-a lungul uneia dintre axe, atunci puteți utiliza un caz mai special: scaleX(x) - scalare de-a lungul X, scaleY(y) - scalare de-a lungul Y.

5. transform:skew - înclinare obiect

Comanda pentru înclinarea unui obiect este skew(x,y) , unde argumentele din paranteze sunt panta de-a lungul axelor X și respectiv Y. Panta trebuie specificată în grade grade.

Exemplul #6. Deformarea obiectelor în html

înălțime: 100px;

Când este plasat, pătratul se transformă într-un diamant datorită înclinării.

lățime: 100px;

Dacă trebuie să aplicați o transformare de-a lungul uneia dintre axe, atunci puteți utiliza un caz mai special: skewX(x) - pantă în X, skewY(y) - pantă în Y.

6. Combinarea valorilor de transformare

Este timpul să ne uităm la efectele interesante care pot fi obținute prin combinarea diferitelor transformări împreună. Să aplicăm trei acțiuni simultan pentru a schimba obiectul: scalare (scalare), rotire (rotire) și translație (traducere).

Exemplul #7. Combinarea valorilor de transformare

Valoarea inițială: pătrat cu margine neagră. Când treceți cu mouse-ul peste el, se va roti într-un cerc cu un cadru roșu și își va schimba culoarea.

înălțime: 100px;

7. Alte valori de transformare

Am acoperit cele mai elementare valori de transformare. Să luăm în considerare alte posibilități.

  • none - nicio transformare (este activat implicit);
  • matrix(x,x,x,x,x,x) - transformare 2D folosind o matrice de 6 valori;
  • matrix3d(x,x,x,x,x,x,x,x,x,x,x,x,x,x,x,x)- Transformare 3D folosind o matrice de 16 valori;
  • translate3d(x,y,z) - mișcare 3d (comparativ cu mișcarea normală, aici se adaugă o a treia coordonată);
  • scale3d(x,y,z) - scalare în 3d (comparativ cu scalarea normală, aici se adaugă o a treia coordonată);
  • rotate3d(x,y,z) - rotație în 3d (comparativ cu rotația obișnuită, aici a fost adăugată o a treia coordonată);
  • rotateX(x) - rotație 3d de-a lungul axei X;
  • rotateY(x) - rotație 3d de-a lungul axei Y;
  • rotateZ(x) - rotație 3d de-a lungul axei Z;
  • perspectiva(n) - perspectiva pentru transformarea elementului 3D;

ÎN Proprietate JavaScript Transformarea CSS este disponibilă pe următoarele proprietăți:

object.style.transform="Transformare" document.getElementById("elementID").style.transform = ""

S-ar putea să vă puneți întrebarea „de ce să folosiți transformarea atunci când puteți modifica pur și simplu datele despre obiect după cum avem nevoie, de exemplu, schimbând dimensiunea obiectului?” Diferența este că proprietatea transform nu schimbă alte elemente de pe pagină în timpul transformării. În cazul în care simpla schimbare dimensiunea obiectului, acest lucru duce inevitabil la o schimbare a obiectelor învecinate din jur, care, de regulă, este urâtă.

Modelul vizual Formatare CSS descrie sistemul de coordonate din cadrul fiecărui element poziționat. Sistemul de coordonate este punctul de referință pentru proprietățile offset. Poziția și dimensiunile în acest spațiu de coordonate pot fi considerate ca fiind date în pixeli, în raport cu un punct de referință, cu valori pozitive mergând în dreapta și în jos. Acest spațiu de coordonate poate fi modificat folosind proprietatea transform.

Transformări CSS3 vă permit să mutați, să rotiți și să scalați elemente. Transformările transformă un element fără a afecta alte elemente ale paginii web, de ex. alte elemente nu se mișcă în raport cu acesta.

Elementele care pot fi transformate includ elemente cu afișaj: bloc; și afișaj: inline-block; , precum și elemente a căror valoare proprietății de afișare este evaluată ca table-row , table-row-group , table-header-group , table-footer-group , table-cell sau table-caption . Un element cu orice valoarea stabilită transformă alte proprietăți decât niciunul .

Există două tipuri de transformări CSS3 − 2DȘi 3D. Transformări 2D transforma elemente în spațiu bidimensional folosind o matrice de transformare 2D. Această matrice este utilizată pentru a calcula coordonatele obiectelor noi pe baza valorilor proprietăților de transformare și origine a transformării. Transformările afectează doar redarea vizuală. În ceea ce privește aspectul paginii, acestea pot duce la debordarea conținutului bloc. În mod implicit, punctul de transformare este în centrul elementului.

Transformări 2D ale elementelor

Suport pentru browser

IE: 10,0, 9,0 -ms-
Margine: 12.0
Firefox: 16,0, 3,5 -moz-
Crom: 36.0, 4.0 -webkit-
Safari: 9.0, 3.1 -webkit-
Operă: 23.0, 15.0 -webkit-
iOS Safari: 9, 7.1 -webkit-
Browser Android: 53, 2.1 -webkit-
Crom pentru Android: -webkit-

1. Funcțiile de transformare 2D se transformă

Proprietatea specifică tipul transformării elementului. Proprietatea este descrisă folosind functii de transformare, care mută elementul în raport cu poziția sa curentă pe pagină sau îi modifică dimensiunea și forma inițială. Nu moștenit.

Valori valide:

matrix() - orice număr
translate() , translateX() , translateY() — unități de lungime (pozitive și negative), %
scale() , scaleX() , scaleY() — orice număr
rotate() - unghi (grade, grad, rad sau viraj)
skew() , skewX() , skewY() — unghi (grade, grad, rad)

Funcţie Descriere
nici unul Valoarea implicită înseamnă nicio transformare. De asemenea, anulează transformarea unui element dintr-un grup de elemente transformabile.
matrice (a, c, b, d, x, y) Compensează elementele și stabilește modul în care acestea se transformă, permițându-vă să combinați mai multe funcții de transformare 2D într-una singură. Rotirea, scalarea, înclinarea și repoziționarea sunt permise ca transformări.
Valoarea lui a modifică scara orizontală. O valoare între 0 și 1 scade elementul, iar o valoare mai mare decât 1 îl mărește.
Valoarea c deformează (deplasează) laturile elementului de-a lungul axei Y, o valoare pozitivă în sus, o valoare negativă în jos.
Valoarea b deformează (deplasează) laturile elementului de-a lungul axei X, o valoare pozitivă la stânga, o valoare negativă la dreapta.
Valoarea d modifică scara verticală. O valoare mai mică de 1 scade elementul, mai mare de 1 îl mărește.
Valoarea x mută elementul de-a lungul axei X, pozitiv la dreapta, negativ la stânga.
O valoare y mută elementul de-a lungul axei y, o valoare pozitivă îl mută în jos, iar o valoare negativă îl mută în sus.
traduce(x,y) Mută ​​un element într-o locație nouă, mutându-l în raport cu poziția sa normală la dreapta și în jos folosind coordonatele X și Y, fără a afecta elementele adiacente. Dacă trebuie să mutați un element la stânga sau în sus, atunci trebuie să utilizați valori negative.
traduceX(n) Deplasează un element în raport cu poziția sa normală X.
traduceY(n) Deplasează un element în raport cu poziția sa normală de-a lungul axei Y.
scara(x,y) Scala elementele pentru a le face mai mari sau mai mici. Valorile între 0 și 1 fac elementul mai mic. Prima valoare scalează elementul în lățime, a doua - în înălțime. Valorile negative afișează elementul într-o manieră în oglindă.
scaleX(n) Funcția scalează lățimea elementului, făcându-l mai lat sau mai îngust. Dacă valoarea este mai mare decât unu, elementul devine mai larg dacă valoarea este între unu și zero, elementul devine mai îngust. Valorile negative afișează elementul în oglindă orizontal.
scară Y(n) Funcția scalează înălțimea elementului, făcându-l mai înalt sau mai scurt. Dacă valoarea este mai mare decât unu, elementul devine mai înalt dacă valoarea este între unu și zero, elementul devine mai mic; Valorile negative afișează elementul în oglindă verticală.
rotire (unghi) Rotește elementele cu un număr specificat de grade, valorile negative de la -1grade la -360de rotesc elementul în sens invers acelor de ceasornic, valorile pozitive în sensul acelor de ceasornic. Valoarea rotire (720deg) rotește elementul cu două rotații complete.
oblică (unghiul x,unghiul y) Folosit pentru a deforma (deforma) laturile unui element în raport cu axele de coordonate. Dacă este specificată o valoare, a doua va fi determinată automat de browser.
skewX(unghi) Deformează laturile elementului în raport cu axa X.
skewY(unghi) Deformează laturile elementului în raport cu axa Y.
iniţială Setează valoarea proprietății la valoarea implicită.
moşteni Moștenește valoarea proprietății de la elementul părinte.

Sintaxă

Div ( -webkit-transform: rotire(360deg); -ms-transform: rotire(360deg); transformare: rotire(360deg); )

Treceți mouse-ul peste blocuri pentru a vedea funcțiile de transformare în acțiune.

2. Punct de transformare transformare-origine

Proprietatea vă permite să mutați centrul de transformare, în raport cu care se modifică poziția/mărimea/forma elementului. Valoarea implicită este center , sau 50% 50% . Setat numai pentru elementele transformate. Nu moștenit.

Uneori neobișnuit solutii de proiectare obligă designerul de layout să recurgă la același lucru soluții nestandardizate la plasarea textului. De exemplu, rotiți unul dintre elementele textului la un anumit unghi. Acest articol va discuta mai multe solutii simple aceasta sarcina.

Înlocuirea textului cu o imagine

Cea mai primitivă soluție la această problemă ar fi folosirea unei imagini. Folosind programul binecunoscut Adobe Photoshop Textul poate fi rotit cu ușurință în orice unghi. După cum vă puteți imagina, nu este nevoie de multă inteligență pentru a utiliza această metodă.

În unele situații este imposibil să se folosească o altă metodă, dar în majoritatea cazurilor se îndepărtează de la utilizarea imaginilor. Acest lucru se explică printr-o serie de dezavantaje care însoțesc această tehnică:

  • Incapacitatea utilizatorului de a copia informații în containerul specificat;
  • Complexitatea procedurii de corectare a părții de text a elementului;
  • Traficul pe serverul site-ului crește;
  • Creșterea cererilor către server la actualizarea unei resurse.

În ciuda faptului că există atât de multe aspecte negative ale utilizării imaginilor, metoda are câteva efecte pozitive.

  • Compatibilitate între browsere– fără probleme la afișarea în browsere diferite.
  • Abilitate ridicată în poziționarea imaginii.

Totuși, în acest caz laturi negative depășesc. Vă sfătuiesc să apelați la alte soluții.

Folosind proprietatea de transformare CSS

Costul utilizării acestei metode este mult mai mare în comparație cu imaginea. O diferență semnificativă este făcută de flexibilitatea în editarea textului și de capacitatea de a selecta și copia conținutul unui container rotit. Principala piatră de poticnire pentru dezvoltarea acestei tehnici a fost compatibilitatea între browsere. Acum am obținut rezultate bune pe acest front, ceea ce ne permite să folosim proprietatea transform fără probleme.

Esența modului în care funcționează proprietatea este împărțirea planului în grade. Ca urmare, atunci când este specificat un anumit unghi, containerul va lua poziția corespunzătoare. Este de remarcat faptul că proprietatea în formă pură nu se aplica. Trebuie să fie însoțit de proprietățile furnizorului, care, de fapt, oferă un nivel ridicat de compatibilitate între browsere.

Este important de reținut că nu textul din interiorul blocului își schimbă poziția, ci blocul în sine, la care proprietatea este accesată printr-un selector de clasă sau într-un alt mod. Mai jos este un exemplu de utilizare a metodei

Container ( - moz- transform: rotire(- 45deg) ; - webkit- transform: rotire(- 45deg) ; - o- transform: rotire(- 45deg) ; - ms- transform: rotire(- 45deg) ; transform: rotire( - 45 de grade);

Ca rezultat, obținem ceva de genul acesta:

Mă refer la această proprietate, designul va fi afișat fără probleme în Firefox, Opera, Internet Explorer și alte browsere webkit.

Manipulare prin Javascript

Esența procesului este complet similară cu metoda discutată anterior. Pentru a-l implementa, aveți nevoie de un minim de cunoștințe de cod js, matematică și o înțelegere a filtrului Matrix.

Javascript

var deg2radians = Math. PI * 2 / 360, grade = - 4; rad = deg * deg2radians, costeta = Math. cos (rad) , sintheta = Math. sin(rad); jQuery(".rotatedBlock") . css(( filtru: „progid:DXImageTransform.Microsoft.Matrix (M11="} ) ;

+ costheta+ ", M12=" + (- 1 ) * sintheta+ ", M21=" + sintheta+ ", M22=" + costheta+

", SizingMethod="extindere automată", activat=adevărat)"

Ca rezultat, obținem aceeași imagine în browser ca atunci când folosim proprietatea transform.

Chiar dacă nu înțelegeți niciun simbol în această intrare, nu contează. Pentru a lucra cu acest cod, este suficient să înțelegeți că valoarea unghiului este scrisă în a doua linie, o înlocuiți singur și pur și simplu copiați restul fără modificări.

Caracteristici de utilizare a Javascript și CSS Aceste două metode au câteva diferențe minore în principiile de funcționare, care sunt foarte importante de cunoscut și de luat în considerare. Prima diferență se bazează pe diferența de înălțime a blocului și poziția acestuia. Ieșirea din această situație este destul de simplă și este utilizarea proprietății marjei. Prin indentare setăm blocul la nivelul și poziția dorite. Alte discrepanțe de poziționare pot fi rezolvate prin atribuirea unei valori blocului

poziționare absolută

Următoarea diferență constă în esența virajului în sine. Când utilizați codul js, punctul de pivotare este la marginea blocului. În a doua metodă, acest punct este situat în centrul elementului. Pentru a fi mai ușor de înțeles, priviți imaginea de mai jos

  • Traducere

Bună, dragă habrafriend! Există multe exemple online de mari utilizări ale transformărilor și tranzițiilor în CSS3. În acest articol, vom trece peste elementele de bază ale CSS3 și vom învăța cum să creați așa ceva. Acest tutorial va fi util pentru cei care tocmai au început să se familiarizeze cu CSS3. Să începem!

Sistem de coordonate

Pentru a înțelege mai ușor cum funcționează mișcarea unui obiect, vom lucra într-un sistem de coordonate.


Cu toate acestea, sistemul nostru de coordonate are o particularitate: axa Y este direcționată în direcția opusă decât de obicei. De ce? Faptul este că HTML și CSS (împreună cu, de exemplu, ActionScript) folosesc un sistem de coordonate invers, deoarece pagina web începe din stânga colțul de susși coboară.
Nota: Vom presupune că ești deja familiarizat Structura HTMLși CSS. Voi sări peste explicațiile despre modul de configurare fișier CSS, cum să plasați pozele etc. Ne vom concentra pe animarea imaginilor. Dacă nu ești sigur care sunt abilitățile tale nivel inalt, apoi vă recomandăm să aruncați o privire la cursul lecțiilor „HTML și CSS în 30 de zile” (gratuit și pe Limba engleză) pentru a învăța tot ce ai nevoie.

1: Mișcare orizontală

Prima mișcare pe care o vom demonstra este orizontală. Vom muta obiectele de la stânga la dreapta și de la dreapta la stânga.

Deplasarea spre dreapta

Pentru a muta un obiect vom folosi transforma: traduce(x,y), unde X este un număr pozitiv și Y=0.


HTML
Deschideți editorul de coduri preferat și introduceți următoarele:


Am definit trei clase pentru imagine:

  • obiect: Stabilirea regulilor de bază ale obiectului nostru.
  • van: Vom folosi diverse obiecte pentru a demonstra fiecare tip de animație.
  • move-right: Folosind această clasă ne vom muta obiectul.
CSS
Mai întâi, vom plasa obiectul nostru (imaginea camionului) în centru.
.obiect (poziție: absolut; ) .dubiță (sus: 45%; stânga: 44%; )
În acest exemplu, vom muta obiectul 350px la dreapta. Sintaxa folosită transform: translate(350px,0);. În plus, obiectul se va mișca doar când treci cu mouse-ul peste el: #axa:hover .mutare-dreapta.

#axis:hover .move-right( transform: translate(350px,0); -webkit-transform: translate(350px,0); /** Chrome și Safari **/ -o-transform: translate(350px,0) ; /** Opera **/ -moz-transform: translate(350px,0 /** Firefox **/ )
Parametru transforma va muta doar obiectul dintr-un punct în altul, dar nu va crea o animație mișcare dată. Pentru a remedia acest lucru, trebuie să adăugați un parametru de mutare la class.object.

Obiect (poziție: absolut; tranziție: toate cele 2s ease-in-out; -webkit-transition: toate 2s ease-in-out; /** Chrome și Safari **/ -moz-transition: toate 2s ease-in-out ; /** Firefox **/ -o-tranziție: toate 2s-ul de intrare **/ )
Această regulă de mutare va spune browserului să se anime Toate parametrii obiectului activați 2 secunde(fără întârziere) folosind funcția ușurință-in-out.
Putem folosi 6 funcții diferite de sincronizare a mișcării:

  • liniar: Mișcarea are loc cu o viteză constantă de la început până la sfârșit.
  • uşura: Mișcarea începe încet și apoi crește viteză.
  • ușurință: Mișcarea începe încet.
  • uşurare: Mișcarea se termină încet.
  • ușurință-in-out: Mișcarea începe și se termină încet.
  • cubic-bezier: Determinați manual valoarea mișcării.

Deplasarea spre stânga

Pentru a muta un obiect la stânga, trebuie doar să puneți o valoare negativă pe axă OH, in timp ce Y ramane neschimbat. În cazul nostru, vom muta obiectul în - 350px La stânga.

HTML
Creați unul nou document htmlși lipiți următorul cod:


De data aceasta folosim clasa mută la stânga pentru a muta obiectul la stânga.

CSS
Acum să introducem -350px pentru axa OX. transform: translate(-350px,0);- mutați obiectul spre stânga.
#axis:hover .move-left ( transform: translate(-350px,0); -webkit-transform: translate(-350px,0); /** Safari și Chrome **/ -o-transform: translate(-350px ,0); /** Opera **/ -moz-transform: translate(-350px,0 /** Firefox **/ )
Deoarece am definit deja regulile de mișcare mai devreme, nu trebuie să o facem din nou.

2: Mișcare pe verticală

Deplasarea unui obiect pe verticală nu va fi dificilă, deoarece este identic cu cel orizontal. Singura diferență este că vom folosi valoarea -y pentru a trece în sus și a valorifica y să se deplaseze în jos.

În sus


HTML
Șablonul HTML este identic cu exemplele anterioare. Cu toate acestea, vom înlocui obiectul nostru cu o rachetă (pentru claritate) și vom atribui o clasă de mutare.

CSS
La fel ca și camionul, vom plasa racheta în centru:
.rachetă ( sus: 43%; stânga: 44%; )
După cum am observat mai devreme, coordonata Y trebuie să fie negativă. În cazul nostru, vom muta obiectul cu 350 px în sus.

#axis:hover .move-up ( transform: translate(0,-350px); -webkit-transform: translate(0,-350px); -o-transform: translate(0,-350px); -moz-transform: traducere(0,-350px )

Să ne mișcăm în jos

După cum probabil ați ghicit, pentru a muta un obiect în jos, coordonata Y trebuie să fie pozitivă, iar coordonata X trebuie să fie 0. Sintaxă: translate(0,y);

HTML

CSS
#axis:hover .move-down ( transform: translate(0,350px); -webkit-transform: translate(0,350px); -o-transform: translate(0,350px); -moz-transform: translate(0,350px); )

3: Mișcare în diagonală

Pentru a muta un obiect în diagonală, vom combina parametrii XȘi y. Sintaxa va fi următoarea: transforma: traduce(x,y).În funcție de direcție, valoarea XȘi y poate fi pozitiv sau negativ.

HTML

CSS
#axis:hover .move-ne ( transform: translate(350px,-350px); -webkit-transform: translate(350px,-350px); -o-transform: translate(350px,-350px); -moz-transform: traducere(350px,-350px)

4: Rotire

Rotația în CSS3 este controlată de coordonatele de grade (de la 0° la 360°). Pentru a roti un obiect, aplicați următoarele opțiuni: transformare: rotire(ndeg); Unde n- grade.

Rotire în sensul acelor de ceasornic

Pentru a roti un obiect în sensul acelor de ceasornic, aplicați o valoare pozitivă pentru rotire(ndeg).

HTML

CSS
#axis:hover .rotate360cw ( transform: rotire(360deg); -webkit-transform: rotire(360deg); -o-transform: rotire(360deg); -moz-transform: rotire(360deg); )

Rotire în sens invers acelor de ceasornic

Pentru a roti un obiect în sens invers acelor de ceasornic, aplicați o valoare negativă pentru rotire(ndeg).

HTML

CSS
#axis:hover .rotate360ccw ( transform: rotire(-360deg); -webkit-transform: rotire(-360deg); -o-transform: rotire (-360deg); -moz-transform: rotire (-360deg); )

5: Scalare

Scalare este caracteristică interesantă CSS3. Folosind parametrul scara(n) sau parametru scara(x,y), putem crește sau micșora obiectul direct în HTML. Obiectul își va schimba dimensiunea în funcție de valoarea lui n/x,y, unde axa X este lățimea și axa Y este înălțimea.
Să ne uităm la următorul exemplu.