不定宽高div水平垂直居中

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>不定宽高进行垂直水平居中</title>
 <style type="text/css">
       #demo{
        position: absolute;
        left: 50%;
        top:50%;
        width: 500px;
        transform:translate(-50%,-50%);
        -webkit-transform:translate(-50%,-50%);
        background: #123455;
        color: #fff;
       }
 </style>
</head>
<body>
 <div id="demo">
  <p>水平垂直居中的随意内容</p>
 </div>
</body>
</html>

基于css3 效果:

 
不定宽高div水平垂直居中
 

 css2:

水平居中一般采用两种方式:

1.块级元素:定宽 + margin:0 auto;(由于是不定宽高,所以这里不适用);

2.行内元素:利用父级元素 text-algin:center;(可以内联化,视情况而定)

垂直方向居中:

采用display:table-cell;vertical-algin:middle;

如:

<style type="text/css">
         #container{
         	display: table;
         	text-align: center;
         	height: 400px;
         	width: 500px;
         	border: 1px solid #ccc;
         }
         #inner{
         	display: table-cell;
         	vertical-align: middle;
         }
</style>
<div id="container">
      <span id="inner">
  	   <img src="img/prdct.jpg">
      </span>
</div>

 效果:

 
不定宽高div水平垂直居中
 

相关推荐