2012-04-08 57 views
9

这里是我的小问题(值仅仅是这里为例):根据其子宽度扩展div的宽度

可以说我有一个宽度大约500px的窗口。 在我的文档,我有没有指定宽度的外层div,但下面的CSS:

.outer{ 
    white-space:nowrap; 
    background:blue; 
} 

此DIV 3个具有以下属性其他分区:

.t1{ 
    display:inline-block; 
    width:400px; 
} 

(注意。的400px宽度这就是问题的所在,该行是大于窗口宽,和外层的div不延伸 的HTML看起来像这样:

<div class="outer"> 
    <div class="t1">1</div> 
    <div class="t1">2</div> 
    <div class="t1">3</div> 
</div> 

我想要实现的是让3个内部div具有蓝色背景,而不是将其设置为t1类。这个例子会产生一个限制窗口宽度的蓝色背景。

这里查看完整的例子:http://jsfiddle.net/sjCTR/(你必须去适应左下角,如果你的屏幕到大)

我想知道如果不知何故,可以直通只有CSS/HTML来实现,无需设置外部div宽度/内部div背景?

+0

不知道我理解你的问题。你是否试图强制每个'.t1'的宽度始终为400px或始终为33%或其他? – Godwin 2012-04-08 23:15:53

+0

不,我放在这里的号码仅用于这个例子。问题更复杂,但想法是外部div的宽度不会增长以适合其子宽度。 – 2012-04-09 07:11:13

回答

22

添加float: leftdisplay: inline-block.outer

+3

非常感谢。两者都在工作。你能解释一下这个魔法是怎么可能的(我的意思是为什么把它添加到外部使它扩展)? – 2012-04-09 07:17:52

+1

你从头痛中解救了我几个小时 – Bruce 2016-08-05 01:17:35

0

add overflow:hidden;宽度:100%;到外面