如何實現未知高居垂直居中

2021-08-22 20:18:03 字數 540 閱讀 3359

管我們知道css的vertical-align特性,但是並不能有效解決未知高度的垂直居中問題(在乙個div容器裡有未知高度的文字或的情況下)。

標準瀏覽器如mozilla,opera等,可將父級元素顯示方式設定為table(display: table;) ,內部子元素定為table-cell (display: table-cell),通過vertical-align特性使其垂直居中,但非標準瀏覽器是不支援的。依然解決不了未知高居垂直居中。

非標準瀏覽器只能在子元素裡設距頂部50%,裡面再套乙個容器元素距頂部-50% 來抵消。最終實現未知高居垂直居中的設定。

看下面的css**:

body

body,html

#outer

#outer[id]

#middle /* for explorer only*/

#middle[id]

#inner /* for explorer only */

div.greenborder

下面是xhtml**:

CSS未知高度垂直居中的實現

css垂直居中 好了,我們看其css實現。凡是table能做到的,css都能做的,但各瀏覽器在css的差異比較大,因此要相容它們難度很大。這涉及許多細節,各種流啊,display的表現效果與css hack,ie早些年搞了大堆的私有屬性,這也有待我們深一步挖掘。我們先看最簡單的實現,背景法 背景法 ...

CSS未知高度垂直居中

最近群裡這個問題比較熱門,決定把我收藏的方法分享大家。在開始時,我們先看一下萬能的table實現。執行 好了,我們看其css實現。凡是table能做到的,css都能做的,但各瀏覽器在css的差異比較大,因此要相容它們難度很大。這涉及許多細節,各種流啊,display的表現效果與css hack,ie...

CSS解決未知高度垂直居中

儘管有css的vertical align特性,但是並不能有效解決未知高度的垂直居中問題 在乙個div標籤裡有未知高度的文字或的情況下 標準瀏覽器如mozilla,opera,safari等.可將父級元素顯示方式設定為table display table 內部子元素定為table cell dis...