你的位置:首页 > 网页设计

[网页设计]【笔记】让DIV水平垂直居中的两种方法


今天写的了百度前端学院春季班的任务:定位和居中问题  由于距离上次学习CSS有点久远了,加上以前木有记笔记的习惯,方法忘得只剩下一种,今天通过网上查阅资料总结了以下两种简单的方法让DIV水平垂直居中。=。=

先来个效果图:

HTML代码:

1 <div class="wrap">2   <div class="main first">3     <div id="left" class="yuan"></div>4     <div id="right" class="yuan"></div>5   </div>6 </div>

CSS:

 1 .main{ 2   width: 400px; 3   height: 200px; 4   overflow: hidden; 5   background-color: #ccc; 6   position: absolute; 7 } 8 .yuan{ 9   width: 100px;10   height: 100px;11   background-color:yellow;12   border-radius: 50%;13   -moz-border-radius: 50%;14   -webkit-border-radius: 50%;15   position: absolute;16 }17 #left{18   top: -50px;19   left: -50px;20 }21 #right{22   bottom: -50px;23   right: -50px;24 }

 

第一种方法:利用负margin,前提是需要知道尺寸。兼容性最好。

设定水平和垂直偏移父元素的50%,
再根据实际长度将子元素上左挪回一半大小
1 .first{2   top: 50%;3   left: 50%;4   margin-left: -200px;5   margin-top: -100px;6 }

第二种方法:利用CSS3的transform,宽度不定,支持IE9+

1 .second{2   left: 50%;3   top: 50%;4   transform: translate(-50%,-50%);5 }