2012-07-23 67 views
0

我想设置div#divcontainerdata,以适应使用CSS屏幕的整个宽度。设置DIV全宽和修复

我简单的HTML是:

<div class="container"> 
    <div class="leftDiv2" style="width:300px;float: left;"></div> 
    <div class="leftDiv1" style="width:300px;float: left;"></div> 
    <div class="divcontainerdata"></div> 
</div> 

我想最终的产品看起来像这样:

|    |     | 
| div:leftdiv1 | divcontainerdata | 
|    |     | 
| div:leftdiv1 |     | 

我怎样才能做到这一点?

+0

使用宽度:100%; – 2012-07-23 13:32:23

+0

谢谢,但我需要左div的导航栏也是300px – 2012-07-23 13:33:12

+0

你能准确地告诉我们你需要什么吗? – 2012-07-23 13:33:58

回答

2

将设置为前两个div,然后为第三个div设置margin-left: 300px

.leftDiv1, .leftDiv2 { 
    width: 300px; 
    float: left; 
    clear: left; 
} 

.divcontainerdata { 
    margin-left: 300px; /* the width of the floated divs */ 
} 

Demo

+0

为什么要留余量? – 2012-07-23 13:47:35

+0

因此它不会包裹在浮动的div下面。 – Ana 2012-07-23 13:48:04

+0

感谢它为我的作品 – 2012-07-23 13:50:47

3

Here

此外,这是很好的做法,导入CSS文件,而不是使用内嵌样式。我已经相应地修改了您的代码。

HTML

<div class="container"> 
      <div class="leftDiv2"> 
     </div> 
      <div class="leftDiv1"> 
     </div> 
      <div class="divcontainerdata"> 
     </div> 
</div>​ 

CSS

div { 
    height: 100px; /*optional*/ 
} 

.leftDiv1 { 
    background-color: red; /*optional*/ 
    clear: left; 
    float: left; 
    width: 300px; 
} 

.leftDiv2 { 
    background-color: blue; /*optional*/ 
    clear:left; 
    float: left; 
    width: 300px; 
} 

.divcontainerdata { 
    background-color: yellow; /*optional*/ 
    width: 100%; 
    margin-left: 300px; /*margin-left = width of leftDiv1, leftDiv2*/ 
} 

0
<style>  
    #left { 
    border: 1px solid #000000; /* Delete it */ 

    float: left; 

    width: 300px; 
    } 

    #content { 
    width: 100%; 
    border: none; 
    } 
</style> 

<div id="container"> 
    <div id="left"> 
    <div id="left_1"> 
     Left 1 
    </div> 
    <div id="left_2"> 
     Left 2 
    </div> 
    </div> 
    <div id="content"> 
    Content 
    </div> 
</div> 
0

HTML

<div class="container"> 
    <div class="leftDiv2">div:leftdiv1</div> 
    <div class="leftDiv1">div:leftdiv1</div> 
    <div class="divcontainerdata">divcontainerdata</div> 
</div>​ 

CSS

.leftDiv1, .leftDiv2{ 
    clear:left; 
    width:300px; 
    float: left; 
    border:solid black 1px; 
    margin:2px; 
} 
.divcontainerdata{ 
    border:solid black 1px; 
    margin:2px; 
    display:inline-block; 
} 

DEMO