我有以下HTML: 垂直中心旋轉的文本與CSS
<div class="outer">
<div class="inner rotate">Centered?</div>
</div>
div.outer
是一個窄的垂直條帶。 div.inner
旋轉90度。我希望文本「居中?」出現在它的容器div的中心。我不知道任何div的大小。
結束語:http://jsfiddle.net/CCMyf/2/。您可以從jsfiddle中看到,在應用transform: rotate(-90deg)
樣式之前文本是垂直居中的,但稍後會有所偏移。當div.outer
短時,這尤其明顯。
是否可以在不知道任何尺寸的情況下垂直居中文本?我還沒有找到解決這個問題的transform-origin
的任何值。
你反對設置'顯示:在元素table'?因爲垂直對齊動態div的「標準」方式應該可以正確使用轉換:http://stackoverflow.com/a/6182661/188221 – DigTheDoug 2013-02-28 15:13:16
我不反對'''display:table'''。這個小提琴表明,表格解決方案與上述問題具有相同的問題:http://jsfiddle.net/4d384/ – danvk 2013-02-28 18:19:53
嘗試將'rotate'類放在中間元素上。應該這樣做,但它看起來像弄亂了物品的寬度。可能不得不使用填充或寬度或高度的道具,但它應該是可行的:http://jsfiddle.net/digthedoug/jWYuq/ – DigTheDoug 2013-02-28 19:16:07