Wie könnte ich ein Bild skalieren und wenn ich mit der rechten Maustaste klicke, dann um 90 Grad drehen.
Was passiert, wenn Sie den Code unverändert ausprobieren, und in welchem Browser haben Sie ihn ausprobiert?
– Adrian
2. April 2013 um 15:41 Uhr
Was passiert ist, ist, dass sich das Bild um 90 Grad dreht, aber die Skalierungseigenschaft niedriger wird, ich meine, das Bild kehrt zu seiner ursprünglichen Skalierung zurück. Und ich benutze Google Chrome. @ Adrian
Hüten Sie sich vor der , beim Schreiben 2,2möchten Sie wahrscheinlich 2.2
– Andrea Ligios
2. April 2013 um 15:58 Uhr
2,2 bedeutet horizontal um 2x und vertikal um 2x skalieren. Sie können es nur verkürzen 2 da beide Dimensionen gleich sind. Viele Codebeispiele im Web verwenden die x,y formatieren, auch wenn die Nummern gleich sind.
– Gawin
12. Juni 2017 um 21:03 Uhr
adeneo
Sie können ein Bild mit CSS drehen, indem Sie die verwenden transform Eigentum mit a rotate(**deg) Wert
Bei der Bewerbung transform In mehreren Zeilen ist es wie jede andere CSS-Eigenschaft und wird überschrieben, sodass nur die letzte Zeile verwendet wird, genau wie bei etwas wie:
.myclass {
top: 100px;
top: 400px;
}
nur die letzte würde zutreffen, also müssen Sie alle Transformationen in einer zusammenfassen transform.
Beachten Sie, dass die Reihenfolge wichtig ist – Sie möchten wahrscheinlich rotate und dann scale (wie oben geschrieben), um die Perspektive Ihres Elements beizubehalten; Wenn Sie die Reihenfolge umkehren, wird das Element verformt. Siehe stackoverflow.com/a/5395185/957950.
– Brichins
7. Juli 2016 um 15:37 Uhr
Nun, aufbauend auf der Antwort von adeneo, eine, die alle Browser enthält, die dazu in der Lage sind CSS-Transformation.
.rotate-img {
-webkit-transform: rotate(90deg) scale(2.2); /* Chrome 4+, Op 15+, Saf 3.1, iOS Saf 3.2+ */
-moz-transform: rotate(90deg) scale(2.2); /* Fx 3.5-15 */
-ms-transform: rotate(90deg) scale(2.2); /* IE 9 */
-o-transform: rotate(90deg) scale(2.2); /* Op 10.5-12 */
transform: rotate(90deg) scale(2.2); /* Fx 16+, IE 10+ */
margin: 10% 0 0 20%;
}
Sie müssen den Code nicht separat schreiben, um sowohl Rotieren als auch Skalieren zu verwenden. Sie können ihn so verwenden:
transformieren: skalieren (1.3) drehen (7 Grad);
Sie können gleichzeitig skalieren und drehen, aber Sie MÜSSEN dies in derselben Zeile tun, da Sie sonst den vorherigen Wert mit dem neuen Wert überschreiben.
let htmlElement = document.getElementById("rotate-img");
let scaleX = -0.3;
let scaleY = 0.2;
let angle = 45 ;
// NOTICE!! THE BACK-TICKS, not regular quotes. Will decode variables inside before printing.
// Code for Safari
htmlElement.style.WebkitTransform = `scale( ${scaleX}, ${scaleY} ) rotate( ${angle}deg )`;
// Code for IE9
htmlElement.style.msTransform = `scale( ${scaleX}, ${scaleY} ) rotate( ${angle}deg )`;
// Standard syntax
htmlElement.style.transform = `scale( ${scaleX}, ${scaleY} ) rotate( ${angle}deg )`;
Beachten Sie auch, dass alle bereits vorhandenen Stile für dieses Element überschrieben werden, es sei denn, Sie speichern diesen Stil zuerst in einer (String-)Variablen und fügen die neuen Stile zu dieser gespeicherten Variable hinzu (anhängen oder verketten) und fügen dann die gesamte Variable wieder hinzu html-Element.
12716600cookie-checkCSS3: Wie kann man ein Bild gleichzeitig drehen und skalieren?yes
Was passiert, wenn Sie den Code unverändert ausprobieren, und in welchem Browser haben Sie ihn ausprobiert?
– Adrian
2. April 2013 um 15:41 Uhr
Was passiert ist, ist, dass sich das Bild um 90 Grad dreht, aber die Skalierungseigenschaft niedriger wird, ich meine, das Bild kehrt zu seiner ursprünglichen Skalierung zurück. Und ich benutze Google Chrome. @ Adrian
– Benutzer2195741
2. April 2013 um 15:43 Uhr
jsfiddle.net/yKF8d – arbeitet hier
– Zoltan Toth
2. April 2013 um 15:45 Uhr
Hüten Sie sich vor der
,
beim Schreiben2,2
möchten Sie wahrscheinlich2.2
– Andrea Ligios
2. April 2013 um 15:58 Uhr
2,2
bedeutet horizontal um 2x und vertikal um 2x skalieren. Sie können es nur verkürzen2
da beide Dimensionen gleich sind. Viele Codebeispiele im Web verwenden diex,y
formatieren, auch wenn die Nummern gleich sind.– Gawin
12. Juni 2017 um 21:03 Uhr