定位,保证金,CSS

时间:2013-10-16 17:35:01

标签: html css positioning margin

我有两张由<div>包围的图片,但想要创建一个选择器ID =&#34; image&#34;。但我想定位第一张图片,该图片取出页面流,其左边距与父元素的左边距齐平。在第二个图像上,我希望它的右边距与父元素的左边距齐平。有什么建议吗?

Before:
 _
| |
|_| 

 _
| |
|_| 

Hello world



After:

 _                   _
| |   Hello world   | |
|_|                 |_|

我认为我的CSS应该是这样的:

#image-left img {
position: absolute;
margin-left: 0;
}
#image-right img {
position: absolute;
margin-right: 0;
}

我的HTML是:

<div id="image-left"><img src="image/logo.jpg"></div>
<div id="image-right"><img src="image/logo.jpg"></div>

3 个答案:

答案 0 :(得分:3)

您还必须设置父位置属性:

#parent {
    position:relative;
}

并设置左右属性

#image-left img {
    position: absolute;
    left: 0;
}
#image-right img {
    position: absolute;
    right: 0;
}

请注意,无论你在中间的任何文字都必须有左右边距,所以它不会与浮动图像重叠

答案 1 :(得分:2)

这是一个使用CSS float将图像定位到其父容器左侧和右侧的方法,并在它们之间插入一些文本:

<div id="container">
    <div id="image-left">
        <img src="image/logo.jpg" />
    </div>
    Hello World
    <div id="image-right">
        <img src="image/logo.jpg" />
    </div>
</div>
div#container {
    width:50%;
    border:1px solid #000;
    text-align:center;
}

#image-left {
    float:left;
}
#image-right {
    float:right;
}

http://jsfiddle.net/JJEng/

编辑:

简化:

<div id="container">
    <img id="image-left" src="image/logo.jpg" />
    Hello World
    <img id="image-right" src="image/logo.jpg" />
</div>
div#container {
    width:50%;
    border:1px solid #000;
    text-align:center;
}

img#image-left {
    float:left;
}
img#image-right {
    float:right;
}

http://jsfiddle.net/JJEng/1/

答案 2 :(得分:1)

<div class="container">
    <div class="image-left"><img src="image/logo.jpg"></div>
    <div class="TextContent">Hello world</div>
    <div class="image-right"><img src="image/logo.jpg"></div>
</div>

.container div {
    float:left;
}

.container div img {
    display:box;
}

.container div.TextContent {
    margin-right:10px;
    margin-left:10px;
}

http://jsfiddle.net/u3JMz/