281 of 313 menu

De eigenschap transform-origin

De eigenschap transform-origin bepaalt het punt, ten opzichte waarvan de transformaties van het element, ingesteld door de eigenschap transform, zullen plaatsvinden. Standaard is dit punt - het midden van het element, en bijvoorbeeld zal rotatie plaatsvinden ten opzichte van zijn midden. Dit gedrag kan echter worden gewijzigd om het element te laten roteren ten opzichte van zijn zijkant, hoek of zelfs ten opzichte van een punt dat buiten het element ligt.

Syntaxis

selector { transform-origin: X-as Y-as Z-as; }

Waarden voor de Y- en Z-as zijn niet verplicht, ze kunnen worden weggelaten (ze nemen dan de standaardwaarden aan). Het verschuiven van het punt langs de Z-as is nodig voor 3D-transformaties.

Waarden voor de X-as

Waarde Beschrijving
CSS-eenheden De waarde kan elke eenheid voor afmetingen zijn, die de offset van het transformatiecentrum vanaf de linkerrand van het element instelt. Een positieve waarde verschuift het transformatiecentrum naar rechts (naar binnen in het element), en een negatieve waarde - naar links (naar buiten het element) ten opzichte van de linkerrand van het element.
left Het rotatiepunt horizontaal op de linkerrand van het element.
right Het rotatiepunt horizontaal op de rechterrand van het element.
center Het rotatiepunt horizontaal in het midden van het element.

Standaardwaarde: center.

Waarden voor de Y-as

Waarde Beschrijving
CSS-eenheden De waarde kan elke eenheid voor afmetingen zijn, die de offset van het transformatiecentrum vanaf de bovenrand van het element instelt. Een positieve waarde verschuift het transformatiecentrum naar beneden (naar binnen in het element), en een negatieve waarde - naar boven (naar buiten het element) ten opzichte van de bovenrand van het element.
top Het rotatiepunt verticaal op de bovenrand van het element.
bottom Het rotatiepunt verticaal op de onderrand van het element.
center Het rotatiepunt verticaal in het midden van het element.

Standaardwaarde: center.

Waarden voor de Z-as

Waarde Beschrijving
CSS-eenheden De waarde kan elke eenheid voor afmetingen zijn, die de offset van het transformatiecentrum vanaf het vlak van het element instelt. Een positieve waarde verschuift het naar ons toe (van het schermvlak af), en een negatieve waarde van ons af.

Standaardwaarde: 0px.

Voorbeeld

Momenteel is de waarde van de eigenschap transform-origin niet ingesteld en het blok zal roteren ten opzichte van zijn midden. Beweeg de muis over het blok om het effect te zien:

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

:

Voorbeeld

En nu zal het blok bij aanwijzen roteren ten opzichte van de linker bovenhoek:

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

:

Voorbeeld

En nu zal het blok bij aanwijzen roteren ten opzichte van de rechter onderhoek. Om dit te doen moet het transformatiepunt worden geplaatst op 100% naar rechts en op 100% naar beneden (je zou ook px kunnen instellen, maar bij het wijzigen van de afmetingen van het element zou het transformatiepunt op zijn plaats blijven, dus het is beter om % te gebruiken):

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

:

Voorbeeld

Laten we het blok roteren ten opzichte van de rechter bovenhoek:

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

:

Voorbeeld

Laten we het blok roteren ten opzichte van het midden van de linkerzijde. Om dit te doen, stellen we voor de X-as left in (het punt van rotatie zal links zijn), en voor de Y-as - center (het rotatiepunt zal verticaal in het midden zijn):

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

:

Voorbeeld

De eigenschap kan niet alleen worden ingesteld voor rotatie, maar ook voor andere transformaties. Laten we de schaal vergroten met scale, waarbij we het punt van transformatie instellen als de linker onderhoek:

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

:

Voorbeeld

En laten we nu het transformatiepunt instellen als de rechter bovenhoek:

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

:

Voorbeeld

Het transformatiepunt kan ook buiten het element worden ingesteld. In het volgende voorbeeld zal bij het aanwijzen van de muis over het rode blok, het zwarte blok een rotatie uitvoeren ten opzichte van een punt dat zich buiten bevindt:

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

:

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren