絶対に配置され、2 つの子 div を含む div が必要です。1 つはテキストが上に、もう 1 つは背景色が下に表示されます。そのようです:
<div class="test1">
<div class="caption">Text that determines width of parent.</div>
<div class="bg"></div>
</div>
.test1 に背景色を設定できることはわかっていますが、jQuery を使用して位置、不透明度、幅などを下位互換 (IE 7+) で制御するには、この背景を別の div にする必要があります。
次の CSS を使用すると、テキストが .bg div の背後にあることを除いて、すべてを機能させることができます。上にテキストが必要です。
<style type="text/css">
.test1 {
position: absolute;
left: 100px;
top: 100px;
}
.test1 .caption {
float: left;
white-space: nowrap;
}
.test1 .bg {
height: 50px;
background-color: #222;
}
</style>
.test1 の幅をテキストの幅に基づいて設定し、.bg div を 100% 幅にして .caption の下に配置するにはどうすればよいですか? これは IE 7 以降で動作する必要があることを繰り返します。
ここにフィドルがあります:http://jsfiddle.net/kbp6r/