div居中的几种方式

CSS居中技巧

摘自:https://www.cnblogs.com/ones/p/4362531.html

 

DIV居中的几种方法

 

1.

1 body{  
2 text-align:center;  
3 } 

缺点:body内所有内容一并居中

 

2.

.center{
position: fixed;
left: 50%;
}

缺点:需要设置position属性,网页复杂时容易扰乱页面布局,而且只是元素的起始位置居中

 

3.

1 .center{
2 width:500px;
3 margin: 0 auto;
4 }

缺点:需要设置div宽度

4.

1 .center {  
2   display: -webkit-flex;  
3   -webkit-justify-content: center;  
4   -webkit-align-items: center;  
5  }  

缺点:需要支持Html5

5.

复制代码
1     .center {
2         position: absolute;
3         top: 50%;
4         left: 50%;
5         -ms-transform: translate(-50%,-50%);
6         -moz-transform: translate(-50%,-50%);
7         -o-transform: translate(-50%,-50%);
8         transform: translate(-50%,-50%); 
9     }
复制代码
缺点:需要支持Html5

6.

1     margin: auto;
2     position: absolute;
3     left: 0;
4     right: 0;

 

 
   

转载于:https://www.cnblogs.com/y-lin/p/9279893.html

### 使用 CSS 和 HTML 实现元素水平垂直居中的方法 #### 方法一:使用 `margin: auto` 对于固定宽度高度的子元素,可以将其父容器设置为相对定位,并给定具体宽高;接着把子元素设为绝对定位并指定四个方向的位置均为 0 ,最后通过设定外边距自动来达到居中效果。 ```css .parent { position: relative; width: 400px; height: 400px; } .child { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; width: 100px; /* 子元素的具体宽度 */ height: 100px; /* 子元素的具体高度 */ } ``` 这种方法适用于已知尺寸的情况[^1]。 #### 方法二:表格布局方式 利用 CSS 的 `display: table` 及其单元格属性可以让内部的内容轻松做到水平和垂直居中。此法不需要知道内层盒子的确切大小: HTML 结构如下所示: ```html <div class="box1"> <div class="box2">我要水平垂直居中</div> </div> ``` 对应的样式定义则为: ```css .box1{ width: 400px; height: 400px; background-color: yellow; text-align: center; display: table; } .box2{ background-color: red; display: table-cell; vertical-align: middle; } ``` 这种方式适合于未知尺寸的文字内容或其他流式布局下的对象[^2]。 #### 方法三:Flexbox 布局模型 现代浏览器广泛支持 Flexbox 方案,它提供了强大的灵活性以及简便的操作手段来进行多维空间上的排列组合。只需几行简单的声明就能完成复杂的嵌套结构内的项目对齐工作。 ```css .container { display: flex; justify-content: center; /* 主轴上居中 */ align-items: center; /* 交叉轴上居中 */ min-height: 100vh; /* 至少占据整个视口的高度 */ } .item { /* 这里放置实际项目的样式 */ } ``` 该技术不仅限定了单个目标物体的行为模式,还能够处理多个同级组件之间的关系,在响应式设计中有广泛应用价值[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值