web前端技術分享之頁面元素水平居中
小夥伴們每次在寫網頁時會經常遇到需要將元素垂直或水平居中的時候,往往面臨著方法的選擇,而各種方法有的簡單,有的困難,還有的有一些坑,在選擇方法時我們應該怎麼做才能不走彎路呢?
話不多說,現在就來分享我的一些方法,在分享之前我先查查秘籍
咳咳,下面是正式內容,以我們最常見的網頁為例
上圖網頁中,紅框部分內的左右元素都是水平居中顯示的,其中既有大小不一的文字又有圖片,面對這種情況只要我們解決其中一個,另外三個就很簡單了,那麼這一個我們應該怎麼處理呢
水平居中方法:
對於元素水平居中常用我們有二種辦法:
方法一:text-align:center文字在容器裡水平居中,讓inline與inline-block在容器裡水平居中,text-align新增給父元素。
方法二:margin: 0 aut0; 讓一個有寬度的塊元素在容器(父元素)裡水平居中,margin: 0 auto新增給當前元素。
(除此之外如果知道詳細的佈局資料。也可以根據情況手動設定margin或padding等元素調整,不過不建議使用,有毒副作用)
圖片:
首先是圖片,在選擇方法之前,我們應該知道圖片的型別是inline-block型別,在選用方法時對於經常使用方法二的人就需要注意,margin: 0 auto;的適用物件是有寬度的塊元素,圖片本身自然有寬度,但並不是塊元素,需要先將其透過display: block;將圖片轉化為塊元素才能使用方法二。
相比而下,方法一就很簡單了,無需轉化元素型別,直接在父元素內使用該屬性即可。
文字:
其次是文字,文字的巢狀既有使用inline型別父元素巢狀的,又有使用block型別巢狀的。針對不同的情況,我們選用的方法也不同。
1.巢狀inline型別的父元素,若想水平居中則在父元素下新增text_align:center;
2.巢狀block型別的父元素,若想水平居中則在本身元素下新增margin: 0 auto;
垂直居中方法:
方法一:line-height:行高高度等於容器高度,只能實現單行文字在容器裡垂直居中,line-height新增給容器。
方法二:vertical-align: middle;使一個inline-block型別的元素垂直居中。
方法三:透過定位,為需要垂直居中的元素設定absolute型別的定位,然後給父元素設定relative型別的定位,然後
- top:0;
- left:0;
- right:0;
- bottom:0;
- margin:auto;
或者:
- top:50%;
- left:50%;
- margin:-NNpx 0 0 -NNpx;
- /*NN為元素寬高的一半**/
方法二有毒,需要4個條件!!!
1.給當前元素在結構上新增一個弟弟元素(必須和當前元素寫在一行上)
2.給當前元素和弟弟新增display:inline-block;
3.給弟弟新增height與父元素同高
4.給當前元素和弟弟元素新增vertical-align:middle;
所以對於文字,我們使用方法一簡單方便。 對於元素型別為inline-block的圖片,我們使用方法二或方法三都可以。 對於block型別,我們就使用方法三。
再回到我們的網頁,其實還是水平居中用的較多,水平居中設定完畢後,垂直方向的距離可以用margin與padding進行調整,這樣很快就寫好了。
其實最主要的合適頭腦清晰,合理選擇方法,選對了就會寫的順利,否則選錯方法就這一堆堆的坑填都填不完。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548651/viewspace-2768115/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 元素垂直水平居中
- 元素水平居中,垂直居中方法
- Web頁面或app等前端頁面之Java Web的JSP、Servlet、Cookie、Session等技術小結WebAPP前端JavaJSServletCookieSession
- Web前端技術分享:什麼是塊元素?什麼是行內元素?Web前端
- web前端技術分享Electron之Renderer Process APIWeb前端API
- web前端技術分享Electron之IPC 通訊Web前端
- 好程式設計師web前端技術分享移動端頁面佈局程式設計師Web前端
- 不定寬度下,元素的垂直居中,水平居中
- 元素自適應水平垂直居中
- 前端技術分享:頁面效能優化問題覆盤前端優化
- Web前端技術分享:網頁排版佈局常見問題彙總Web前端網頁
- web前端技術分享:常用JavaScript框架有哪些?Web前端JavaScript框架
- css面試題實現元素垂直水平居中-包括未知寬高的元素五種回答CSS面試題
- 淺談居中問題(水平居中、垂直居中、水平垂直居中)
- 直播系統app原始碼,元素水平垂直居中APP原始碼
- CSS元素(文字、圖片)水平垂直居中方法CSS
- 元素水平垂直居中三種方法實現
- 水平居中
- 【css系列】六種實現元素水平居中方法CSS
- 水平居中和垂直居中
- 如何在Web前端實現CAD圖文字全文搜尋功能之技術分享Web前端
- web前端技術分享:使用react實現簡易路由Web前端React路由
- 網頁元素居中的n種方法網頁
- 前端技術演進(一):Web前端技術基礎前端Web
- 水平居中、垂直居中、水平垂直居中、浮動居中、絕對定位居中…….幫你搞定
- CSS 實現元素在當前視窗水平垂直居中CSS
- 元素水平垂直居中(僅做自我總結,侵權刪)
- CSS垂直居中和水平居中CSS
- CSS水平居中和垂直居中CSS
- 飛碼LowCode前端技術:如何便捷配置出頁面前端
- 好程式設計師web前端技術分享css盒模型程式設計師Web前端CSS模型
- 如何提升web前端技術?Web前端
- Web前端是什麼?Web前端包括哪些技術?Web前端
- web前端開發面試題分享Web前端面試題
- 如何實現婚戀app原始碼中元素水平垂直居中?APP原始碼
- 讓一個元素水平垂直居中,到底有多少種方案?
- 面試題:水平垂直居中的17種方法面試題
- Web前端技術分享:全棧工程師常用的開發工具Web前端全棧工程師