281 of 313 menu

Vlastnosť transform-origin

Vlastnosť transform-origin nastavuje bod, vzťahom ku ktorému budú prebiehať transformácie elementu, nastavované vlastnosťou transform. Predvolene je tento bod - centrum elementu, a napríklad rotácia bude prebiehať vzťahom ku jeho stredu. Avšak, toto správanie je možné zmeniť a prinútiť element rotovať vzťahom ku svojej strane, rohu alebo vo všeobecnosti vzťahom ku bodu, ktorý leží mimo elementu.

Syntax

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

Hodnoty po osi Y a Z nie sú povinné, je možné ich vynechať (nadobudnú predvolené hodnoty). Posun bodu po osi Z je potrebný pre 3D transformácie.

Hodnoty pre os X

Hodnota Popis
CSS jednotky Hodnotou sú ľubovoľné jednotky pre veľkosti, ktoré nastavujú odsadenie stredu transformácie od ľavého okraja elementu. Kladná hodnota posúva stred transformácie doprava (dovnútra elementu), a záporná - doľava (von z elementu) vzťahom ku ľavému okraju elementu.
left Bod rotácie horizontálne na ľavom okraji elementu.
right Bod rotácie horizontálne na pravom okraji elementu.
center Bod rotácie horizontálne v strede elementu.

Predvolená hodnota: center.

Hodnoty pre os Y

Hodnota Popis
CSS jednotky Hodnotou sú ľubovoľné jednotky pre veľkosti, ktoré nastavujú odsadenie stredu transformácie od horného okraja elementu. Kladná hodnota posúva stred transformácie nadol (dovnútra elementu), a záporná - hore (zvnútra elementu) vzťahom ku hornému okraju elementu.
top Bod rotácie vertikálne na hornom okraji elementu.
bottom Bod rotácie vertikálne na dolnom okraji elementu.
center Bod rotácie vertikálne v strede elementu.

Predvolená hodnota: center.

Hodnoty pre os Z

Hodnota Popis
CSS jednotky Hodnotou sú ľubovoľné jednotky pre veľkosti, ktoré nastavujú odsadenie stredu transformácie od roviny elementu. Kladná hodnota ho posúva na nás (od roviny obrazovky), a záporná od nás.

Predvolená hodnota: 0px.

Príklad

Teraz nie je hodnota vlastnosti transform-origin nastavená a blok sa otočí vzťahom ku svojmu stredu. Prejdite myšou nad blok, aby ste videli efekt:

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

:

Príklad

A teraz pri prejdení myšou sa blok otočí vzťahom ku hornému ľavému rohu:

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

:

Príklad

A teraz pri prejdení myšou sa blok otočí vzťahom ku pravému dolnému rohu. Preto je potrebné umiestniť bod transformácie na 100% doprava a na 100% nadol (bolo by možné nastaviť aj px, ale pri zmene veľkosti elementu by bod transformácie zostal na mieste, preto je lepšie nastaviť v %):

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

:

Príklad

Otočme blok vzťahom ku pravému hornému rohu:

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

:

Príklad

Otočme blok vzťahom ku stredu ľavej strany. Preto pre os X nastavíme left (bod rotácie bude vľavo), a pre os Y - center (bod rotácie bude v strede vertikálne):

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

:

Príklad

Vlastnosť je možné nastaviť nielen pre rotáciu, ale aj pre iné transformácie. Zväčšime mierku pomocou scale, pričom bod transformácie určíme ako ľavý dolný roh:

<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); }

:

Príklad

A teraz nastavme bod transformácie ako pravý horný roh:

<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); }

:

Príklad

Bod transformácie je možné nastaviť aj mimo elementu. V nasledujúcom príklade pri prejdení myšou nad červený blok čierny blok vykoná rotáciu vzťahom ku bodu, ktorý sa nachádza zvonku:

<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); }

:

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť