281 of 313 menu

Svojstvo transform-origin

Svojstvo transform-origin zadaje tačku, u odnosu na koju će se odvijati transformacije elementa, zadate svojstvom transform. Podrazumevano ova tačka je centar elementa, i, na primer, rotacija će se odvijati u odnosu na njegov centar. Međutim, ovo ponašanje se može promeniti i naterati element da se rotira u odnosu na svoju stranu, ugao ili uopšte u odnosu na tačku koja leži izvan elementa.

Sintaksa

selektor { transform-origin: X-osa Y-osa Z-osa; }

Vrednosti po osama Y i Z nisu obavezne, mogu se izostaviti (preuzeće podrazumevane vrednosti). Pomeranje tačke po Z osi je potrebno za 3D transformacije.

Vrednosti za X osu

Vrednost Opis
CSS jedinice Vrednost su bilo koje jedinice za veličine, koje zadaju odstupanje centra transformacije od leve ivice elementa. Pozitivna vrednost pomera centar transformacije udesno (unutra u element), a negativna - ulevo (napolje od elementa) u odnosu na levu ivicu elementa.
left Tačka rotacije po horizontali na levoj ivici elementa.
right Tačka rotacije po horizontali na desnoj ivici elementa.
center Tačka rotacije po horizontali u centru elementa.

Podrazumevana vrednost: center.

Vrednosti za Y osu

Vrednost Opis
CSS jedinice Vrednost su bilo koje jedinice za veličine, koje zadaju odstupanje centra transformacije od gornje ivice elementa. Pozitivna vrednost pomera centar transformacije nadole (unutra u element), a negativna - nagore (spolja od elementa) u odnosu na gornju ivicu elementa.
top Tačka rotacije po vertikali na gornjoj ivici elementa.
bottom Tačka rotacije po vertikali na donjoj ivici elementa.
center Tačka rotacije po vertikali u centru elementa.

Podrazumevana vrednost: center.

Vrednosti za Z osu

Vrednost Opis
CSS jedinice Vrednost su bilo koje jedinice za veličine, koje zadaju odstupanje centra transformacije od ravni elementa. Pozitivna vrednost pomera ga ka nama (od ravni ekrana), a negativna od nas.

Podrazumevana vrednost: 0px.

Primer

Trenutno vrednost svojstva transform-origin nije zadata i blok će se okrenuti u odnosu na svoj centar. Pređite mišem preko bloka da vidite efekat:

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: center center; transform: rotate(30deg); }

:

Primer

A sada će se blok pri prelasku okretati u odnosu na gornji levi ugao:

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: 0px 0px; transform: rotate(30deg); }

:

Primer

A sada će se blok pri prelasku okretati u odnosu na desni donji ugao. Za to treba pomeriti tačku transformacije za 100% udesno i za 100% nadole (mogli bi se zadati i px, ali pri promeni veličina elementa tačka transformacije bi ostala na mestu, pa je bolje koristiti %):

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: 100% 100%; transform: rotate(30deg); }

:

Primer

Okrenimo blok u odnosu na gornji desni ugao:

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: 100% 0%; transform: rotate(30deg); }

:

Primer

Okrenimo blok u odnosu na centar leve strane. Za to ćemo za X osu zadati left (tačka rotacije će biti levo), a za Y osu - center (tačka rotacije će biti u centru po vertikali):

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: left center; transform: rotate(30deg); }

:

Primer

Svojstvo se može zadati ne samo za rotaciju, već i za druge transformacije. Povećaćemo razmeru pomoću scale, zadavši tačku transformacije kao levi donji ugao:

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: left bottom; transform: scale(1.5); }

:

Primer

A sada ćemo zadati tačkom transformacije desni gornji ugao:

<div id="elem">lorem ipsum</div> #elem { border: 1px solid black; width: 100px; height: 50px; } #elem:hover { transform-origin: right top; transform: scale(1.5); }

:

Primer

Tačku transformacije možemo zadati i izvan elementa. U sledećem primeru pri prelasku mišem preko crvenog bloka crni blok će izvršiti rotaciju u odnosu na tačku koja se nalazi spolja:

<div id="hover"></div> <div id="elem"></div> #hover { border: 1px solid red; width: 50px; height: 50px; } #elem { border: 1px solid black; width: 100px; height: 50px; transition: transform 1s; transform-origin: -100px -100px; } #hover:hover + #elem { transform: rotate(30deg); }

:

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij