HTML/CSS实现div居中div内部元素垂直居中的代码案例

内容摘要
这篇文章主要为大家详细介绍了HTML/CSS实现div居中div内部元素垂直居中的代码案例,可以用来参考一下。对此感兴趣的朋友,看看idc笔记做的技术笔记!
文章正文

这篇文章主要为大家详细介绍了HTML/CSS实现div居中div内部元素垂直居中的代码案例以用来参考一下。

对此感兴趣的朋友,看看idc笔记做的技术笔记!

div居中

div水平和垂直居中,text-align和vertical-align不起作用,因为标签div没有这两个属性,所以再css中设置这两个值不能居中的效果

1. div水平居中:设置margin的左右边距为自动

div
  {
  margin:0 auto;
  }

6种元素垂直居中的方法

利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可。本文收集了六种利用css进行元素的垂直居中的方法,每一种适用于不同的情况,在实际的使用过程中选择某一种方法即可。

1.Line-Height Method

适用:单行文本垂直居中

代码:

html

<div id="parent">
  <div id="child">Text here</div>
</div>

css

#child {
  line-height: 200px;
  }

垂直居中一张图片,代码如下

<div id="parent">
  <img src="image.png" alt="" />
</div>

css

#parent {
  line-height: 200px;
  }
  #parent img {
  vertical-align: middle;
  }

2.CSS Table Method

适用:通用

代码:

html

<div id="parent">
  <div id="child">Content here</div>
  </div>

css

#parent {display: table;}
  #child {
  display: table-cell;
  vertical-align: middle;
  }

低版本 IE fix bug:

#child {
  display: inline-block;
  }

3.Absolute Positioning and Negative Margin

适用:块级元素

代码:

html

<div id="parent">
  <div id="child">Content here</div>
  </div>

css

#parent {position: relative;}
  #child {
  position: absolute;
  top: 50%;
  left: 50%;
  height: 30%;
  width: 50%;
  margin: -15% 0 0 -25%;
  }

4.Absolute Positioning and Stretching

适用:通用,但在IE版本低于7时不能正常工作

代码:

html

<div id="parent">
  <div id="child">Content here</div>
  </div>

css

#parent {position: relative;}
  #child {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 50%;
  height: 30%;
  margin: auto;
  }

5.Equal Top and Bottom Padding

适用:通用

代码:

html

<div id="parent">
  <div id="child">Content here</div>
  </div>

css

#parent {
  padding: 5% 0;
  }
  #child {
  padding: 10% 0;
  }

6.Floater Div

适用:通用

代码:

html

<div id="parent">
  <div id="floater"></div>
  <div id="child">Content here</div>
  </div>

css

#parent {height: 250px;}
  #floater {
  float: left;
  height: 50%;
  width: 100%;
  margin-bottom: -50px;
  }
  #child {
  clear: both;
  height: 100px;
  }

以上就是六种方法,可以在实际的使用过程中合理选择

注:关于HTML/CSS 实现div居中、div内部元素垂直居中的简单示例的内容就先介绍到这里

代码注释

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!