2014-03-24 38 views
0

可能有人请解释如何改变my example使之具有:3列布局的边缘列与内容一样宽?

  • 3列在一起一样宽的容器
  • 右侧,左侧的列宽为其中的内容(即它们不换他们行内的孩子元素)
  • 中心列占用剩余宽度,根据需要包装其内容
  • 所有3列保持相同的高度(即如果中间列由于其内容的包装而增长高度,则该内容不应该溢出到右边或左边的列)
    • 容器仍然可以作为宽的父元素

小提琴http://jsfiddle.net/QG98e/ - 使用花车,但中间一栏的内容果然溢出,围绕左/右列流动的尝试:

从上面的小提琴标记

HTML:

<p>other content above</p> 

<div id="container"> 
    <div id="left"> 
    <button>foo</button> 
    <button>bar</button> 
    </div> 

    <div id="center"> 

    blah blah blah blah blah blah blah blah 
    blah blah blah blah blah blah blah blah 
    blah blah blah blah blah blah blah blah 
    blah blah blah blah blah blah blah blah 
    blah blah blah blah blah blah blah blah 
    blah blah blah blah blah blah blah blah 
    blah blah blah blah blah blah blah blah 

    </div> 

    <div id="right"> 
    <a href="#">curly</a>, <a href="#">moe</a> 
    </div> 
</div> 

<p>other content below</p> 

CSS:

#container { 
    border: 1px solid #808080; 
    clear: both; 
} 

#left { 
    float: left; 
} 

#right{ 
    float: right; 
} 
+0

请不要问我们给你的代码。你应该自己尝试一下。如果您遇到困难,请询问您遇到问题的具体问题。 – dzny

+0

@dzny - 我尝试过;用Plunker编辑即将发布...期待您的回复 – Nikita

+0

我已经添加了一个工作演示(小提琴)和引用的代码。请删除'暂停'指定。顺便说一句,“要求我们推荐或找到一个工具”是理所当然的,因为我不需要一个工具。 – Nikita

回答

-1
#container { 
    position: relative; 
    border: 1px solid #808080; 
    height: 100px;/*define you*/ 
    width: 100%; 
    } 
#left { 
    position: absolute; 
    width: 20%; 
    height: inherit; 
    left: 0; 
} 
#center{ 
    position: absolute; 
    width: 56%; 
    height: inherit; 
    left: 20%; 
} 
#right{ 
    position: absolute; 
    width: 20%; 
    height: inherit; 
    right: 0; 
} 
+0

谢谢但上述方法不起作用,因为它需要预定义列宽 - 这是我想避免的 – Nikita