SOURCE

console 命令行工具 X clear

                    
>
console
<!-- <div class="contain">
  <div class="line"></div>
  <div class="center">居中</div>
</div>  -->
 <div class="contain">
  <div class="center">居中块</div>
</div>
/*已知居中的元素*高度*,可以支持图片居中,*/
/* .contain{
  height:100px;
  width: 200px;
  background-color:red;
  position:relative;
}
.center{
  height: 20px;
  text-align:center;
  overflow:auto;
  margin: auto;
  position: absolute;
  top: 0; left: 0; bottom: 0; right: 0;
  vertical-align:middle;
}
 */

/*以下均为可变高度*/
/*table,table-cell在IE/FireFox上和IE上面可能有问题*/
/* .contain {
  display:table;
  height:200px;
  width:200px;
  background-color:red;
}
.center {
  display:table-cell;
  vertical-align:middle;
  text-align:center;
} */

/*transform*/
/*  .contain{
   position:relative;
   height:200px;
   width:200px;
   background-color:lightgreen;
 }
 .center {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
 } 
 */
/*负外边距(外边距margin取负数,大小为width/height(不使用box-sizing: border-box时包括padding,)的一半,再加上top: 50%; left: 50%;)IE兼容性好*/

/* .center {
   width: 300px;  
   height: 200px;  
   text-align: center;
   position: absolute;  
   top: 50%; left: 50%;  
   margin-left: -150px; (width + padding)/2  
   margin-top: -100px; (height + padding)/2  
   background-color: lightblue;
} */

/*flex*/
/* .contain {
  display:flex;
  height:200px;
  width:200px;
  background-color:red;
  justify-content: center;
  align-items: center;
} */

/*行内块元素 inline-block,边上设置高100%,宽度为0的元素,推荐是父节点before设置:before  ????*/ 
.contain{
  margin: 200px 100px;
  position:relative;
  height:200px;
  width:300px;
  background-color:lightgreen;
  text-align:center;
}
 .center{
  display:inline-block;
  vertical-align:middle
} 
/*  .line{
  display:inline-block;
  width: 0%;
  height:100%;
  vertical-align:middle;
  background-color:lightgreen;   
 } 
 */
.contain:after{
  content: '';
  display:inline-block;
  height: 100%;
  vertical-align:middle;
  background-color:lightgreen;  
}