当前位置:Gxlcms > css > css实现垂直居中的6种方法(代码示例)

css实现垂直居中的6种方法(代码示例)

时间:2021-07-01 10:21:17 帮助过:19人阅读

本篇文章给大家带来的内容是介绍css实现垂直居中的6种方法(代码示例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

html结构

  1. <p class="box box2">
  2. <span class="content content2">垂直居中</span></p>

默认css样式结构

  1. .box{
  2. width:200px;
  3. height:200px;
  4. background-color:green;
  5. }
  6. .content{
  7. background-color:yellow;
  8. }

1. table-cell

该方法兼容IE8+,火狐,谷歌,并且content是否有宽高都可以。 注:IE8+ 包含 IE8

  1. .box2{
  2. display:table-cell; //此元素会作为一个表格单元格显示(类似 <td> 和 <th>)
  3. text-align:center; //左右居中
  4. vertical-align:middle; //上下居中
  5. }

2. display: flex;

该方法不兼容IE8,IE9content是否有宽高都可以。兼容火狐、谷歌

参考flex布局:https://www.cnblogs.com/qingchunshiguang/p/8011103.html


  1. .box2{
  2. display: flex;
  3. justify-content:center; //左右居中
  4. align-items:center; //上下居中
  5. }

3. 绝对定位和负边距

该方法兼容IE8+,火狐,谷歌,content必须有宽高

  1. .box2{
  2. position:relative;
  3. }
  4. .content2{
  5. position:absolute;
  6. top:50%;
  7. left:50%;
  8. margin-top:-40px;
  9. margin-left:-40px;
  10. }

4. 绝对定位和0

该方法兼容IE8+,火狐,谷歌,content必须有宽高。

  1. .box2{
  2. position:relative;
  3. }
  4. .content2{
  5. margin:auto;
  6. position:absolute;
  7. top:0;
  8. left:0;
  9. right:0;
  10. bottom:0;
  11. }

5. 绝对定位和transform

该方法不兼容IE8,兼容IE9+,火狐,谷歌,content是否有宽高都可以。

  1. .box2{
  2. position:relative;
  3. }
  4. .content2{
  5. position:absolute;
  6. top:50%;
  7. left:50%;
  8. transform:translate(-50%,-50%);
  9. }

6. display:flex 和 margin:auto

content有宽高:不兼容IE8,IE9,content没有宽高:不兼容IE。有无宽高都兼容火狐、谷歌。

  1. .box2{
  2. display: flex;
  3. text-align: center;
  4. }
  5. .box2 .content2{margin: auto;}

以上就是css实现垂直居中的6种方法(代码示例)的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行