日期:2014-05-16  浏览次数:20725 次

css布局的时候,元素漂移的问题
本人菜鸟一枚,用css定位的时候,一些元素莫名其妙的漂移弄 的我很蛋疼,还请大神给指点一下迷津,下面是我说明这个问题的一段代码,红色标注部分是问题的焦点,当我注释掉ul浮动的时候,他的父元素second会与first产生一个缝隙,这个缝隙到底是从何而来,与这个浮动又有什么联系。再者就是ul元素为什么整体会向下漂移一点距离,有什么方法可以比较合适的解决这个问题,这个还只是一个说明的一个例子,我遇到很多类似的问题,明明大小什么的都是很好填满父元素,但是就是不满,而且会向下漂移,求高手指点一下
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>测试</title>
<style>

.parent{
         float: right;  
  width: 400px;
  height: 300px;
 }
 
 .firstchild{
  width: 400px;
  height: 100px
 }
 .secondchild{
width: 400px;
  height: 200px;

 }
 .secondchild ul{
  float: left;---------------------------------1
list-style-type: none;


}
.secondchild ul li{
height: 39px;
line-height: 39px;
text-align: left;
font-size:15px;
border-bottom: 1px solid #E0E0E0;
}

</style>
</head>
<body>
  <div class="parent" >
   <div class="firstchild"></div>

<div class="secondchild">
    <ul>
               <li><a href="#">列表</a></li>
   <li><a href="#">列表</a></li>
   <li><a href="#">列表</a></li>
   <li><a href="#">列表</a></li>
   <li><a href="#">列表</a></li>
</div>
  </div>
  </div>
</body>
</html>
------解决方案--------------------
呵呵 每次 float 之后 你必须要  clear:both