当前位置: 首页>編程日記>正文

CSS 常见布局 水平垂直居中对齐

CSS 常见布局 水平垂直居中对齐

一 水平居中

1 行内元素水平居中

行内元素一般是文本,图标等,text-align可以控制其相对于父元素水平居中对齐

#parent{text-align: center;
}

2 margin 自动水平居中

单个块级元素,可以使用margin auto可自动左右对齐,不过要首先设定宽度

#son{width: 100px; /*必须定宽*/margin: 0 auto;
}

另外还可以通过设置父子宽度,使用具体的margin绝对定位对齐

3 块级改行内块级水平居中

多个块级元素时,父元素使用text-align居中对齐,子元素使用inline-block改为行内块级元素即可

#parent{text-align: center;
}
.son{display: inline-block; /*改为行内或者行内块级形式,以达到text-align对其生效*/
}

4 flex布局水平居中对齐

flex布局中主轴为横轴,交叉轴为数轴,在父元素调整子元素沿主轴居中对齐,即可让子元素水平居中对齐

在这里插入图片描述

#parent{display: flex;justify-content: center;
}

二 垂直居中

1 line-height垂直居中

可以通过设置height和line-height一致,使元素垂直居中对齐。height为该元素自身的高度,比如div img等的元素高度;line-height为行高的意思,绝定了元素中文本内容的高度。
line-height 可以通过百分比设置行高,以下为默认和70% 200%的效果。
在这里插入图片描述

height>line-height时,元素会偏向上,
height<line-height时,元素会偏向下,
height = line-height时,正好垂直居中。

#parent{height: 150px;line-height: 150px;  /*与height等值*/
}

可用于单行元素和多行元素

2 vertical-align垂直居中

针对行内元素和图片,进行垂直居中

#son{vertical-align: middle;
}

3 flex垂直居中

3.1 父元素设置flex,使用align-items让子元素沿交叉轴对齐,即垂直居中

#parent{display: flex;align-items: center;
}

3.2 子元素调整自己的位置,垂直居中对齐

#parent{display: flex;}
#son{align-self: center;}

在这里插入图片描述
3.3 margin auto的方法在flex布局平方自动平分剩余空间,达到垂直居中的效果

#parent{display: flex;}
#son{margin: auto 0;}

三 水平垂直居中

1 最好用最容易理解功能最强的还是flex布局

#parent{display: flex;
}
#son{margin: auto;
}或#parent{display: flex;justify-content: center;  //水平居中,沿主轴方向,主轴横向align-items: center;  //垂直居中,沿垂直主轴方向
}或#parent{display: flex;justify-content: center;
}
#son{align-self: center;
}

2 父相子绝

.far{position: relative;    //父元素允许相对定位
}

子元素有三种写法:

2.1 要知道子元素宽高,利用宽高一半偏移

.box{width: 100px;height: 50px;position: absolute;
}

2.2 不知道子元素宽高元素,transform偏移,但注意会影响其他元素的fixed定位等问题

.box{position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);
}

2.2 不知道子元素宽高元素,margin:auto
.box{
position: absolute;
left:0;
top:0;
right:0;
bottom:0;
margin:auto;
}


https://www.fengoutiyan.com/post/14502.html

相关文章:

  • flex布局垂直居中
  • 首行缩进怎么设置
  • 字符间距加宽怎么设置
  • word文字垂直居中
  • 垂直居中
  • word字符间距怎么设置
  • 单元格行高怎么设置
  • word表格列宽怎么设置
  • 鏡像模式如何設置在哪,圖片鏡像操作
  • 什么軟件可以把圖片鏡像翻轉,C#圖片處理 解決左右鏡像相反(旋轉圖片)
  • 手機照片鏡像翻轉,C#圖像鏡像
  • 視頻鏡像翻轉軟件,python圖片鏡像翻轉_python中鏡像實現方法
  • 什么軟件可以把圖片鏡像翻轉,利用PS實現圖片的鏡像處理
  • 照片鏡像翻轉app,java實現圖片鏡像翻轉
  • 什么軟件可以把圖片鏡像翻轉,python圖片鏡像翻轉_python圖像處理之鏡像實現方法
  • matlab下載,matlab如何鏡像處理圖片,matlab實現圖像鏡像
  • 圖片鏡像翻轉,MATLAB:鏡像圖片
  • 鏡像翻轉圖片的軟件,圖像處理:實現圖片鏡像(基于python)
  • canvas可畫,JavaScript - canvas - 鏡像圖片
  • 圖片鏡像翻轉,UGUI優化:使用鏡像圖片
  • Codeforces,CodeForces 1253C
  • MySQL下載安裝,Mysql ERROR: 1253 解決方法
  • 勝利大逃亡英雄逃亡方案,HDU - 1253 勝利大逃亡 BFS
  • 大一c語言期末考試試題及答案匯總,電大計算機C語言1253,1253《C語言程序設計》電大期末精彩試題及其問題詳解
  • lu求解線性方程組,P1253 [yLOI2018] 扶蘇的問題 (線段樹)
  • c語言程序設計基礎題庫,1253號C語言程序設計試題,2016年1月試卷號1253C語言程序設計A.pdf
  • 信奧賽一本通官網,【信奧賽一本通】1253:抓住那頭牛(詳細代碼)
  • c語言程序設計1253,1253c語言程序設計a(2010年1月)
  • 勝利大逃亡英雄逃亡方案,BFS——1253 勝利大逃亡
  • 直流電壓測量模塊,IM1253B交直流電能計量模塊(艾銳達光電)
  • c語言程序設計第三版課后答案,【渝粵題庫】國家開放大學2021春1253C語言程序設計答案
  • 18轉換為二進制,1253. 將數字轉換為16進制
  • light-emitting diode,LightOJ-1253 Misere Nim
  • masterroyale魔改版,1253 Dungeon Master
  • codeformer官網中文版,codeforces.1253 B
  • c語言程序設計考研真題及答案,2020C語言程序設計1253,1253計算機科學與技術專業C語言程序設計A科目2020年09月國家開 放大學(中央廣播電視大學)
  • c語言程序設計基礎題庫,1253本科2016c語言程序設計試題,1253電大《C語言程序設計A》試題和答案200901
  • 肇事逃逸車輛無法聯系到車主怎么辦,1253尋找肇事司機