两列布局的设置方法总结

今天看到了这样一道题

用两种不同的方法来实现一个两列布局,其中左侧部分宽度固定、右侧部分宽度随浏览器宽度的变化而自适应变化 

自己感觉有好几种方法,再此总结下:

 一、使用position:absolute方法,因为把元素设置为absolute,那元素就脱离了文档流,后面的元素就会占据他原来的位置:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<style type="text/css">    
    .side{width:190px;height:80px;background-color:#F00;position:absolute;}
    .exta{height:80px;background-color:#0f0;margin-left:190px; }        
</style>

<body>
    <div class="pd">   
        <div class="side">side</div>
        <div class="exta">exta</div>
    </div>
</body>
</html>

 

二、使用float方法

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<style type="text/css">
    
   .side{width:190px;height:80px;background-color:#F00;
      float:left;
    }
    .exta{height:80px;background-color:#0f0; }//不能添加float:left;否则其宽度就会随内容变窄,不是随浏览器变化了
        
</style>

<body>
    <div class="pd">
        
        <div class="side">side</div>
        <div class="exta">exta</div>
    </div>
</body>
</html>

 

posted @ 2015-12-29 21:59  myherodream  阅读(266)  评论(0编辑  收藏  举报