HTML/CSS 实现div居中、div内部元素垂直居中的简单示例

感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!

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/CSS:div居中和div内部元素垂直居中

适用:单行文本垂直居中

代码

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/CSS:div居中和div内部元素垂直居中

适用:通用

代码

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/CSS:div居中和div内部元素垂直居中

适用:块级元素

代码

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

HTML/CSS:div居中和div内部元素垂直居中

适用:通用,但在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/CSS:div居中和div内部元素垂直居中

适用:通用

代码

html

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

css

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

6.Floater Div

HTML/CSS:div居中和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;
  }

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

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在&#39;&#39;,则表示换行,用&#39;&#39;切割。
代码实现 option = { backgroundColor: &amp;#39;#080b30&amp;#39;, tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...