Commencons avec le HTML, dans lequel nous pouvons retrouver comme nous pouvions nous y attendre, un objet .cube contenant six faces .side .
C'est au niveau du CSS que nous retrouverons la partie la plus intéressante de ce pen, comme d'habitude. Évidemment, la partie qui ressort à la première lecture est la partie de la ligne 35 à la ligne 57, qui définit l'emplacement dans l'espace et la rotation de chacun des cotés, mais il existe une autre partie ESSENTIELLE a ce pen, sans quoi nous ne pouvons pas avoir la moindre 3D, et nous la retrouvons ligne 21 : transform-style: preserve-3d;
Note : transform-style est une propriété définissant si un élément possède un espace interne tridimensionnel ou non. Cette propriété peut avoir deux valeurs différentes : flat et preserve-3d, et bien évidemment, si elle est réglée sur flat (qui est la valeur par défaut) toute transformation 3D est "aplatie", comme une ombre projetée sur un mur.
Cette propriété est essentielle pour tout travail en 3D, mais est aussi un gros vecteur de ralentissement pour les petits PC, donc appliquez là avec discernement uniquement sur les éléments en ayant besoin.
Enfin, nous pouvons parler de la partie Javascript, qui ne fait qu'une chose : appliquer une transformation 3D au cube en lui-même lors de l'appui sur les touches flèches du clavier, ce qui permet de contrôler la rotation du cube.