将两个div粘到另一个

时间:2012-09-02 15:51:45

标签: html css

这是我想要实现的目标。 我有3个div。让我们把它们称为左右中心。中心div的宽度是动态的。它可能是100px,200px等取决于中心div保持的图像。 如何这样做左侧和右侧的div将坚持中心div而不管中心div大小?

2 个答案:

答案 0 :(得分:2)

类似于http://jsfiddle.net/t3Gjx/

HTML:

<div class="wrapper">
    <div class="left">Left</div>
    <div class="center">
        <img src="http://upload.wikimedia.org/wikipedia/commons/8/80/A-Caracas.png" alt="img" />
    </div>
    <div class="right">Right</div>
</div>

CSS:

.wrapper{
    text-align:center;
    border:2px solid blue;
    font-size:0;
}

.wrapper>div{
    display:inline-block;
    text-align:left;
    vertical-align:top;
    border:2px solid red;
    font-size:16px;
}

修改

正如Zoltan Toth所说,如果窗口宽度小于元素组合宽度,它们将垂直堆叠而不是彼此相邻。

如果您不想要,请添加

.wrapper{
    white-space:nowrap;
}

请在此处查看:http://jsfiddle.net/t3Gjx/1/

答案 1 :(得分:1)

您可以对侧面元素使用绝对定位 - DEMO

<强> HTML

<div id="center">
    <div id="left"></div>

    <img src="http://lorempixel.com/200/200" />

    <div id="right"></div>
</div>

<强> CSS

#left, #right {
    width: 100px;
    background: orange;
    height: 200px;
    position: absolute;
    top: 0;
    left: -100px;
}

#right {
    left: 100%;
}

#center {
    margin-left: 100px; /* width of the left div */
    position: relative;
    display: inline-block;
}