<div class="outer">
<div class="inner"></div>
<div class="outer">
<div class="outer"></div>
</div>
</div>
我想使用CSS调整outer
元素的宽度。
以下是要求:
outer
的填充为8px
inner
小于200px - 16px
,则outer
为200px
inner
大于或等于200px - 16px
,则outer
的宽度为inner's width + 16px
outer
可能有outer
个子项,内部outer
元素的要求相同。例如:
<div class="outer">
<div class="outer">
</div>
</div>
外部outer
的宽度为200px + 16px
,内部outer
的宽度为200px
答案 0 :(得分:3)
使用min-width
#outer{
min-width:200px;
}
#inner{
width: auto;
}
这会导致outer
与inner
一起增长但不会低于200px
答案 1 :(得分:1)
我评论了TheValyreanGroup关于如何使他/她的答案适合您的目的的回答。基本上你只需要添加display:inline-block
以防止outer
div占用100%的宽度。这是一个演示:
.outer {
padding:8px;
min-width:200px;
display:inline-block;
}
/* These are for demonstration */
.outer {
background-color:red;
}
.outer > .outer {
background-color:purple;
}
.outer > .outer > .outer {
background-color:blue;
}
&#13;
<div class="outer">
<div class="inner" contenteditable="true">test</div>
<div class="outer">
<div class="outer" contenteditable="true">test test test test test</div>
</div>
</div>
&#13;
我添加背景颜色只是为了演示。我添加了contenteditable="true"
,因此您可以直接编辑文本以观察其行为。