水平垂直居中的實現方法
小div在大div裡面水平垂直居中的實現方法
初學前端時,我們都經常會練習實現關於水平垂直居中。那麼你們都會用哪種方法呢?其實關於如何設定小盒子在大盒子裡面水平垂直方向同時居中的實現方法有很多種,那麼今天我就總結一下常用水平垂直居中的方法。
(水平垂直居中效果圖)
Ⅰ 方法一:使用定位的方法(如下圖)
(圖1使用定位方法,需要知道子元素的寬高,但是不需要知道父元素的寬高.)
(我把我的樣式程式碼貼上到下邊了)
.bg-box {width: 200px;height: 200px;margin:30px auto;border: 1px solid red;position:relative;}
.sm-box {width: 100px;height: 100px;border: 1px solid red;background: red;position:absolute; top: 50%;left:50%;margin-top: -50px; margin-left: -50px; }
Ⅱ 方法二:利用定位及margin:auto實現(如下圖)
(圖2實現原理是設定margin自動適應,然後設定定位的上下左右都為0,就如四邊均衡受力從而實現盒子的居中;)
(我把我的樣式程式碼貼上到下邊了)
.bg-box {width: 200px;height: 200px;margin:30px auto;border: 1px solid red;position:relative;}
.sm-box {width: 100px;height: 100px;border: 1px solid red;background: red;position: absolute;margin: auto;top: 0;left: 0;right: 0;bottom: 0;}
Ⅲ 使用display:table-cell; (如下圖)
(圖3實現原理: display:table-cell屬性指讓標籤元素以表格單元格的形式呈現,類似於td標籤.組合使用vertical-align,text-align,可以使父元素內的所有行內元素水平垂直居中(也就是將內部的元素設定display:inline-block))
(我把我的樣式程式碼貼上到下邊了)
.bg-box {width: 200px; height: 200px;border: 1px solid red;display: table-cell;vertical-align: middle;text-align: center;}
.sm-box { width: 100px;height: 100px;border: 1px solid red;background: red; display: inline-block; }
Ⅳ 方法四:使用伸縮佈局display:flex;(如下圖)
(圖4 我覺得這個方法是最簡單,最好用)
(我把我的樣式程式碼貼上到下邊了)
.bg-box { width: 200px;height: 200px;border: 1px solid red;display: flex; justify-content: center; align-items: center; }
.sm-box {width: 100px;height: 100px;border: 1px solid red; background: red;}
Ⅴ 計算四周的間距設定子元素與父元素之間的margin-top和margin-left;(如下圖)
(圖5方法需要同時知道父元素與子元素的寬高,不方便日後的維護.)
(我把我的樣式程式碼貼上到下邊了)
.bg-box { width: 200px;height: 200px;border: 1px solid red; }
.sm-box { width: 100px;height: 100px;border: 1px solid red; background: red; margin-top: 50px; margin-left: 50px; }
(總結這幾種常見的方法,希望對初學前端者有用! ---懿左左)
作者:懿左左
連結:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2157/viewspace-2813455/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 16種方法實現水平居中垂直居中
- div實現水平垂直居中的幾種方法
- css實現垂直水平居中的幾種方法CSS
- 如何實現水平垂直居中?
- 元素水平垂直居中三種方法實現
- CSS水平居中和垂直居中的方法CSS
- 元素水平居中,垂直居中方法
- css 水平垂直居中實現方式CSS
- 淺談居中問題(水平居中、垂直居中、水平垂直居中)
- CSS實現水平垂直居中的方式有哪些?CSS
- css實現水平垂直居中的幾種方式CSS
- 水平居中和垂直居中
- CSS實現水平、垂直居中,N種方法,徹底說透!CSS
- 水平垂直居中佈局的多種實現方式
- CSS垂直居中和水平居中CSS
- CSS水平居中和垂直居中CSS
- 水平居中、垂直居中、水平垂直居中、浮動居中、絕對定位居中…….幫你搞定
- css水平垂直居中CSS
- 元素垂直水平居中
- div 水平垂直 居中
- CSS實現水平垂直居中的1010種方式(史上最全)CSS
- 面試題:水平垂直居中的17種方法面試題
- 三行CSS程式碼實現水平垂直居中CSS
- Css實現垂直居中的幾種方法CSS
- 一起搞懂 CSS 水平居中與垂直居中的16個方法CSS
- CSS 實現元素在當前視窗水平垂直居中CSS
- 不定寬度下,元素的垂直居中,水平居中
- CSS元素(文字、圖片)水平垂直居中方法CSS
- CSS視窗垂直水平居中CSS
- 前端開發入門到實戰:css實現div垂直水平居中的2種常用方法前端CSS
- 如何實現婚戀app原始碼中元素水平垂直居中?APP原始碼
- 設定圖片水平垂直居中
- 元素自適應水平垂直居中
- div垂直居中-CSS元素垂直居中方法CSS
- 【20190129】CSS-垂直水平居中相關CSS
- CSS div水平垂直居中效果詳解CSS
- CSS實現垂直居中的問題CSS
- 討論下垂直水平居中的多種方案