0

我有 3 个内部 div 都向左浮动。它们被包裹在宽度为 100% 的父 div 中。我将我的第一个内部 div 设置为特定宽度,然后我的下一个设置为重复 x 背景,右边的位于旁边。

它们里面没有任何内容,只是用来保存背景精灵。所以你有一个左 div、中心 div 和右 div。中间的会平铺,而外面的不会。我遇到的问题是它们需要特定的宽度,否则背景不会显示。有没有办法让中心显示。我尝试了 100% 的宽度,但它什么也没做。我可以让它工作的唯一方法是将父级的显示设置为表格。然后内部的表格单元格。但这在 IE7 中不受支持。

            <div id="subNav">
                <div class="subNav-left"></div>
                <div class="subNav-middle"></div>
                <div class="subNav-right"></div>
            </div>
4

1 回答 1

1

我了解您想要显示流畅的背景。第一个 div 显示条带的左侧部分,第三个显示最后一个,中间的一个重复背景,因此它可以是流动的。要在不进行额外编码的情况下实现这一点,只需将重复背景分配给主 div,并浮动两个内部 div,并使用它们各自的背景:

<div id="subNav">
    <div class="subNav-left"></div>
    <div class="subNav-right"></div>
    <div class="clear"></div>
</div>

和CSS:

<style>
#subNav{
    background: url(repeating_bk.png) top left repeat-x;
    width:100%;
}
.subNav-left{
    width: 50px; /* specified */
    height: 20px; /* specified */
    background: url(left.png) top left no-repeat;
    float:left;
}
.subNav-right{
    width: 50px; /* specified */
    height: 20px; /* specified */
    background: url(right.png) top right no-repeat;
    float:right;
}
.clear { clear:both; }
</style>

希望能帮助到你。

于 2012-05-03T23:51:27.370 回答