CSS實現元素水平居中

2021-09-20 03:18:58 字數 1852 閱讀 5378

元素主要分為塊級元素和行內元素,所以對元素進行水平居中也分這兩種情況來討論,另外塊級元素的實現比較複雜,將分情況討論。

常用行內元素為a/img/input/span等,標籤內的html文字也屬於此類。對於此類情況,水平居中是通過給父元素設定text-align:center來實現的。

html結構:

hello world!!!

css樣式:

常用塊級元素為div/table/ul/dl/form/h1/p等。根據應用場景不同又分為定寬塊級與不定寬塊級兩種情況,分別討論。

滿足**定寬**和**塊狀**兩個條件的元素是可以通過設定**「左右margin」值為「auto」**來實現居中的。

html結構:

hello world!!!

css樣式:

我們經常會遇到不定寬度塊級元素的使用,如分頁導航,因為分頁的數目不定,所以不能用寬度限制住。此時對元素進行水平居中主要有三種方式:

2.1加入table標籤

第一步:為需要設定的居中的元素外面加入乙個 table 標籤 ( 包括)。

第二步:為這個table設定「左右margin:auto」(這個和定寬塊狀元素的方法一樣)。

html結構:

css樣式:

**這種方法的缺點是增加了無語義的html標籤,增加了巢狀深度

2.2設定display;inline方法

改變塊級元素的dispalyinline型別,然後使用text-align:center來實現居中效果。

html結構:

css樣式:

這種方法的缺點是將塊級元素的display設定為inline,於是少了很多功能,比如盒子模型

2.3設定position:relativeleft:50%;

通過給父元素設定float,然後給父元素設定position:relativeleft:50%,子元素設定position:relativeleft:-50%來實現水平居中。

html結構:

css樣式:

這種方法可以保留塊狀元素仍以display:block的形式顯示,優點不新增無語議表標籤,不增加巢狀深度,但它的缺點是設定了position:relative,帶來了一定的***。

三種方式各有利弊,根據實際情況相應選用。

css實現元素水平垂直居中

利用負邊距實現子元素居中 相對于父元素 position relative 需已知子元素的width與height 且把子元素的position設為absolute,絕對定位 以及設定left和top為50 再加上負邊距,margin left值為width的一半,同樣的,margin top值為h...

css實現元素垂直水平居中

css實現垂直居中的方法 方法一 父元素display flex 子元素margin auto auto fa son 方法二 父元素display flex 並設定justify content center align items center fa son 方法三 在不改變父元素的前提下,只修...

css元素水平居中

問題 想讓元素x 不是文字 水平居中 方法一 text align center text align屬性指定元素文字的水平對齊方式。要求 text align center,作用在x元素的父元素上,並且x不能是塊級元素 因為塊級元素會填充滿整個父元素 準確一點來說,就是x的寬要小於父元素的。要是想...