Ich habe folgende HTML: Vertically Mitte gedreht Text mit CSS
<div class="outer">
<div class="inner rotate">Centered?</div>
</div>
div.outer
ist ein schmaler vertikalen Streifen. div.inner
ist um 90 Grad gedreht. Ich hätte gerne den Text "Zentriert?" in seinem Container div erscheinen. Ich kenne die Größe von Div im Voraus nicht.
Dies kommt in der Nähe: http://jsfiddle.net/CCMyf/2/. Sie können von der jfiddle sehen, dass der Text vertikal zentriert ist, bevor der transform: rotate(-90deg)
Stil angewendet wird, aber nach etwas versetzt ist. Dies ist besonders auffällig, wenn div.outer
kurz ist.
Ist es möglich, diesen Text vertikal zu zentrieren, ohne eine der Größen im Voraus zu kennen? Ich habe keine Werte von transform-origin
gefunden, die dieses Problem lösen.
Sind Sie entgegengesetzt Einstellung 'Anzeige: table' auf den Elementen? Da die "normale" Möglichkeit, dynamische divs vertikal auszurichten, ohne Probleme mit der Umwandlung funktionieren sollte: http://stackoverflow.com/a/6182661/188221 – DigTheDoug
Ich bin nicht gegen '' 'display: table'''. Diese Geige zeigt, dass die Tabellenlösung die gleichen Probleme wie die obige hat: http://jsfiddle.net/4d384/ – danvk
Versuchen Sie, die 'rotate' Klasse auf das mittlere Element zu setzen. Das sollte es tun, aber es sieht so aus, als würde es die Breite des Gegenstandes vermasseln. Vielleicht muss man mit den Padding- oder Breiten- oder Höhenrequisiten herumspielen, aber es sollte machbar sein: http://jsfiddle.net/digthedoug/jWYuq/ – DigTheDoug