CSS 3D transformaties

Met de CSS 3D-transformatie functie kunnen elementen worden getransformeerd in 3D.

CSS 3D transformatie

CSS ondersteunt ook 3D-transformaties met deze functie kun je basis transformaties uitvoeren, zoals het verplaatsen, roteren, schalen en scheeftrekken van elementen in een driedimensionale ruimte.

Beweeg de muis over de onderstaande elementen om het verschil tussen een 2D en een 3D-transformatie te zien:

2D Rotatie
3D Rotatie


Browser ondersteuning

De getallen in de tabel geven de browserversie aan die de eigenschap volledig ondersteunt. Hou de muis op de afbeelding in het tabel om de versie nummer van de browsers te weergeven.

Eigenschap
Transform Ja Ja Ja Ja Ja


CSS 3D transformatie methodes

Voor de CSS eigenschap transform kun je de volgende methodes toepassen:

translate3d()
rotate3d()
scale3d()
rotateX()
rotateY()
rotateZ()
matrix3d()

De translate3d() methode

De translate3d() methode verplaatst het element van de huidige positie naar een nieuwe positie langs de X-, Y- en Z-as. In het onderstaande voorbeeld wordt de afbeelding 15 pixels langs de X- en Y-as, en 25 pixels langs de Z-as verplaatst.

Kaart
Kaart

VoorbeeldVoorbeeld:
.transformed  {
  transform: translate3d(15px, 15px, 25px);
}


De rotate3d() methode

De rotate3d() methode roteert het element met de klok mee of tegen de klok in volgens een bepaalde graad. In het voorbeeld hieronder wordt de afbeelding langs de Y-as geroteert met een hoek van 60 graden.

Kaart
Kaart

VoorbeeldVoorbeeld:
.transformed {
  transform: translate3d(15px, 15px, 25px);
}

Tip Je kunt negatieve waarden gebruiken om het element in de tegenovergestelde richting te laten roteren.


De scale3d() methode

De scale3d() methode vergroot of verkleint de grootte van een element. Het effect van deze methode is niet helemaal zichtbaar tenzij je deze gebruikt in combinatie met andere transformaties zoals weergegeven in het onderstaande voorbeeld.

Kaart
Kaart

VoorbeeldVoorbeeld:
.transformed {
  transform: scale3d(1, 1, 2) rotate3d(1, 0, 0, 60deg);
}

De methode scale3d(1, 1, 2) schaalt de elementen langs de Z-as en de methode rotatie3d(1, 0, 0, 60deg) roteert het beeld langs de X-as met een hoek van 60 graden.

De rotateX() methode

 Orgineel
 Getransformeerd

De rotateX() methode roteert een element met een bepaalde graad rond de X-as:

VoorbeeldVoorbeeld:
div {
  transform: rotateX(150deg);
}


De rotateY() methode

 Orgineel
 Getransformeerd

De rotateY() methode roteert een element met een bepaalde graad rond de Y-as:

VoorbeeldVoorbeeld:
div {
  transform: rotateY(150deg);
}


De rotateZ() methode

De rotateZ() methode roteert een element met een bepaalde graad rond de Z-as:

VoorbeeldVoorbeeld:
div {
  transform: rotateZ(90deg);
}

De matrix3d() methode

De matrix3d() methode combineert alle 3D-transformatie methoden in één. De matrix() methode heeft 16 parameters, die wiskundige functies bevatten, waarmee je elementen kunt roteren, schalen, verplaatsen enz.

Hier is een voorbeeld van het uitvoeren van een 3D-transformatie met behulp van de methode matrix3d().

Kaart
Kaart

VoorbeeldVoorbeeld:
.transformed {
  transform: matrix3d(0.359127, -0.469472, 0.806613, 0, 0.190951, 0.882948, 0.428884, 0, -0.913545, 0, 0.406737, 0, 0, 0, 0, 1);
}

Wanneer je echter meer dan één transformatie tegelijk wilt uitvoeren, is het handiger om de transformatie methodes te gebruiken en deze in volgorde op te nemen, zoals in de onderstaande voorbeeld:

VoorbeeldVoorbeeld:
.transformed {
  transform: translate3d(0, 0, 60px) rotate3d(0, 1, 0, -60deg) scale3d(1, 1, 2);
}


Ad blocker gedetecteerd!
  Ons website heeft gedetecteerd dat u een Ad blocker gebruikt. Codecenter.nl is gratis, wij blijven overeind door het weergeven van advertenties en u kunt ons daarbij helpen. Het wordt aanbevolen om uw Ad blocker uit te schakelen zodat u verder gebruik kunt maken van codecenter.nl, alvast bedankt.