css實現div不定寬高垂直水平居中解決方案

    在項目中咱們常常能遇見然圖片垂直水平居中,不定寬高的div垂直水平居中,等等~~css

    如今我將介紹我所知道的幾種用css來解決的幾種方案。html

1.父元素text-align:center;display:table-cell;vertical-align:middle;子元素display:inline-block;佈局

  

.parent{
	text-align: center;
	display: table-cell;
	vertical-align: middle;
}
.child{
	display: inline-block;
}

  這個方案兼容性比較友好,完美利用了表格單元格的特性。flex

  

2.父元素position:relative;子元素position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);spa

1 .parent{
2     position: relative;
3 }
4 .child{
5     position: absolute;
6     left: 50%;
7     top: 50%;
8     transform: translate(-50%,-50%);
9 }

這種方案有個兼容性問題,就是transform這個屬性。不過基本也沒多大問題。這種方案主要利用 了transform這個屬性translate基於自身偏移。code

 

3.父元素display:flex;justify-content:center;align-items:center;orm

1 .parent{
2     display: flex;
3     justify-content: center;
4     align-items: center;
5 }

這種方案主要利用了flex的特性,flex佈局只兼容IE10+。我的以爲flex佈局是將來的方向。想了解flex佈局狠狠地戳這裏htm

 

我的推薦第一種方案,兼容性友好雖然麻煩點。blog

最後附上網易學友提供的方便記住的思惟導圖圖片

相關文章
相關標籤/搜索