J'ai un <div>
que je veux faire pivoter de 90 degrés:
<div id="container_2"></div>
Comment puis-je faire ceci?
J'ai un <div>
que je veux faire pivoter de 90 degrés:
<div id="container_2"></div>
Comment puis-je faire ceci?
Réponses:
Vous avez besoin de CSS pour y parvenir, par exemple:
#container_2 {
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-o-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
}
Démo:
(Il y a une rotation de 45 degrés dans la démo, donc vous pouvez voir l'effet)
Remarque: Les préfixes -o-
et ne-moz-
sont plus pertinents et probablement pas nécessaires . IE9 nécessite -ms-
et Safari et le navigateur Android nécessitent-webkit-
Mise à jour 2018: les préfixes de fournisseur ne sont plus nécessaires. Seul transform
est suffisant. (merci @rinogo)
transform: rotate(90deg);
est nécessaire
Utilisez le suivant dans votre CSS
div {
-webkit-transform: rotate(90deg); /* Safari and Chrome */
-moz-transform: rotate(90deg); /* Firefox */
-ms-transform: rotate(90deg); /* IE 9 */
-o-transform: rotate(90deg); /* Opera */
transform: rotate(90deg);
}
transform: rotate(90deg);
règle. La raison en est que, généralement, vous voulez que les normes soient prioritaires, et en CSS, la dernière définition l'emporte toujours.
Utilisation transform: rotate(90deg)
:
#container_2 {
border: 1px solid;
padding: .5em;
width: 5em;
height: 5em;
transition: .3s all; /* rotate gradually instead of instantly */
}
#container_2:hover {
-webkit-transform: rotate(90deg); /* to support Safari and Android browser */
-ms-transform: rotate(90deg); /* to support IE 9 */
transform: rotate(90deg);
}
<div id="container_2">This box should be rotated 90° on hover.</div>
Cliquez sur "Exécuter l'extrait de code", puis passez la souris sur la case pour voir l'effet de la transformation.
De façon réaliste, aucune autre entrée préfixée n'est nécessaire. Voir Puis-je utiliser les transformations CSS3?
#element{transition: 9999999s}
(ce qui fait que la transition vers la normale prend une éternité) et #element:hover{transition: .3s}
(ou aussi longtemps que vous voulez que la rotation prenne).
Nous pouvons ajouter ce qui suit à une balise particulière en CSS:
-webkit-transform: rotate(90deg);
-moz-transform: rotate(90deg);
-o-transform: rotate(90deg);
-ms-transform: rotate(90deg);
transform: rotate(90deg);
En cas de demi-rotation, passez 90
à 45
.