CSS定位 - 最佳定位方式

时间:2012-08-17 17:52:43

标签: css

什么是最好的定位方式?浮动,相对,绝对?

让我们说我想要这样的定位:

enter image description here

我如何定位这样的东西以及最好的方法是什么? 浮动,相对,绝对?

3 个答案:

答案 0 :(得分:1)

如果您想要fluid layout,请使用floats

定位元素relative/absolute会导致它们显示为inline,因此需要height/width,然后它们会变为non-fluid

答案 1 :(得分:1)

您必须创建一个充当容器的div

然后再创建三个div,一个用于右侧,两个用于左侧。

我已经创建了一个jSfiddle文件供您参考。我创造了一些快速的东西

http://jsfiddle.net/wSp7F/

这完全取决于您要使用的布局类型。响应,流动或固定。

<强> HTML

<div id="container">
<div id="rightside">
    <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.</p>
</div>
<div class="leftside">
    <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.</p>
</div>

<div class="leftside">
    <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.</p>
</div>

</div>​

<强> CSS

#container {width:500px;position:relative;overflow:Hidden;outline:1px solid red}

.leftside {float:left;width:225px;margin:0 0 5px 0}
#rightside {float:right;width:200px}

.leftside,#rightside {outline:1px solid black;padding:5px}
​

答案 2 :(得分:1)

没有一种最好的方法,但这就是我的方法。

http://jsfiddle.net/Wuj35/

HTML

<div id="wrapper">
    <div id="div3">div 3</div> 
    <div id="div1">div 1</div>
    <div id="div2">div 2</div>
</div>

CSS

#wrapper{
    width:450px;
}

#div1,
#div2,
#div3{
    float:left;
    margin:1em;
    padding:1em;
    border:5px solid #000;
    border-radius:8px;
}

#div1, 
#div2{
    width:150px;
    height:75px;
}

#div2{
    clear:left;
}

#div3{
    float:right;
    width:150px;
    height:225px;
}