CSS控制居中是前端開發中非常常用的布局技能,本文列出幾種CSS控制元素居中的幾種方法。
一、水平居中
使用CSS控制水平居中很簡單:
· 塊級元素 設置width,并設置margin auto
· 內聯元素 父元素設置text-align center
HTML代碼如下:
- <div class="container">
- <div class="content">
- 水平居中哦
- div>
- div>
1. 塊級元素水平居中
- .container {
- height: 300px;
- width: 300px;
- border: 1px solid red;
- }
- .content {
- width: 10rem;
- border: 1px solid green;
- margin: 0 auto;
- }
2. 內聯元素水平居中
- .container {
- height: 300px;
- width: 300px;
- border: 1px solid red;
- text-align: center;
- }
- .content {
- display: inline-block;
- border: 1px solid green;
- }
代碼很簡單,而且沒什么兼容性問題,所以通常也不需要用別的復雜方式來實現水平居中效果。
二、水平垂直居中
使用CSS控制垂直居中(或者水平垂直居中)就不像控制垂直居中那么方便,這里主要羅列幾種。
1. flex布局
flex布局出現以后,垂直居中就很方便了,直接設置父元素:
- display flex
- align-items center
如果同時要水平居中,則同時設置:
- justify-content center
需要注意的是IE10+才支持,webkit前綴瀏覽器設置flex屬性需要加webkit。
- .container {
- width: 300px;
- height: 300px;
- border: 1px solid red;
- display: -webkit-flex;
- display: flex; // 關鍵屬性
- align-items: center; // 垂直居中
- justify-content: center // 水平居中
- }
- .content {
- border: 1px solid green;
- }
2. margin+ position:absolute布局
position: absolute布局的元素,通過設置top/bottom, left/right這兩對屬性,可以讓元素在垂直方向和水平方向分別具有了自適應的特性。就像div在水平方向的默認表現一樣!
上文中對于塊級元素的水平居中,我們設置寬度然后配合以margin可以實現水平居中。而對于設置了top/bottom,left/right的absolute定位元素,我們設置寬高再配合margin就可以達到水平垂直居中:
- .container {
- width: 300px;
- height: 300px;
- position: relative;
- border: 1px solid red;
- }
- .content {
- position: absolute;
- left: 0;
- right: 0;
- top: 0;
- bottom: 0;
- width: 200px;
- height: 100px;
- margin: auto;
- border: 1px solid green;
- }
兼容性很好,IE8以上支持。
>>本文地址:http://www.jecan.cn/zhuanye/2020/53435.html
聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?