2010-03-17 81 views
0

我想模拟一个表的行为与div。身高:100%不考虑

我有我的布局划分的结构分为三列:

div#wrapper { 
    width:800px; 
    float:left; 
    height:100%; 
    margin-top:7px; 
    text-align:center; 
} 
div#left { 
    width:167px; 
    float:left; 
    padding-bottom:50px; 
    margin-right:3px; 
} 
div#main { 
    width:454px; 
    float:left; 
} 
div#right { 
    width:167px; 
    float:left; 
    margin-left:3px; 
} 

包装是三列左,主要的容器,右键

格“主”具有可变内容,以便在一些案件更长,在其他情况下非常短。当内容变化时,div包装器会被改编并且没关系,但左右列不适应包装。

P.S没有文档类型没有问题,事实上,我将左,主和右的高度设置为100%,但是当插入transional.dtd时,div的高度不被考虑。

如何解决此问题?

对不起,我的英语!

+2

FYI没有必要范围的元素都被去DIV#等等,因为你是已经使用ID,这应该是独特的 – marcgg 2010-03-17 10:53:44

回答

-1

你应该使用jQuery

 
<script type="text/javascript"> 
$(this).load(function() { 
    alert(document.documentElement.clientHeight + '+' + $(window).height()); 
    if ($(window).height() - 250 > 300) 
     $('#content').css('min-height', '224px'); 
    else 
     $('#content').css('min-height', $(window).height() - 250); 
    } 
); 
$(this).resize(function() { 
    if ($(window).height() - 250 > 300) 
     $('#content').css('min-height', '224px'); 
    else 
     $('#content').css('min-height', $(window).height() - 250); 
    } 
); 
</script> 

<div id="content" style="min-height:350px;"> 

</div> 

只是改变hights的数字。

+0

#content在我的情况是包装?对吧? – Ivan90 2010-03-17 11:07:24

+6

我讨厌挑选错误,但如果可以在CSS中使用JQuery标准CSS“东西”,这不是一个好习惯。 – 2010-03-17 11:20:38

+0

你是最棒的:)最后我解决了我的问题。 我必须让你虚拟咖啡:) 谢谢谢谢 – Ivan90 2010-03-17 11:21:34

0

你可以尝试插入:

min-height: 100%; 

为好,以支付自己:)

+0

最小高度:在每个div 100%? – Ivan90 2010-03-17 10:45:24

+1

最小高度不工作在IE – marcgg 2010-03-17 10:52:10

+0

:(在我的情况下,最小高度不工作在任何地方。 – Ivan90 2010-03-17 10:55:42

0

我尝试使用

min-height:100%; 

,但我可以解决这个问题。

我在不同的论坛上看到,这是不可能的与xhtml固定高度:100%与一个div,并且解决这个问题的唯一方法是使用JQuery?

1

我@Neurofluxation同意让我们看看有什么我可以找到关于谷歌:

100% Height Layout Using CSSCSS Faux Columns

+0

好东西。谢谢。我会尽量只使用CSS。我想事实上,如果在浏览器中的JavaScript被禁用does not'工作! – Ivan90 2010-03-17 11:35:40