【发布时间】:2014-01-21 14:50:41
【问题描述】:
如何创建一个 3 列 CSS 布局,左右边缘与父元素的边缘齐平?我希望能够在流动布局中做到这一点,所以没有固定的宽度。
这听起来应该很容易,但我能想到的最好的办法是相当 hack。
<style>
.c3 { display:block; text-align:center; }
.c3 span { display: inline-block; width:20%; text-align:left; vertical-align:top; }
.c3 .left { float:left; }
.c3 .right { float:right; }
</style>
...
<span class="c3">
<span class="left"> ...
</span>
<span class="center"> ...
</span>
<span class="right"> ...
</span>
</span>
你可以看到它here,这工作正常(至少在我的浏览器中)但感觉不对。有没有更好的方法来做到这一点?
由于似乎对我正在尝试做的事情有些困惑,所以这里是在上下文中。我经常遇到这种情况,我已经有一个页面布局,并且我想要该布局中的三列。我希望这三列是“完全合理的”,并且我希望事情是流动的,因为即使页面具有固定的布局,通常也有一个 facebook 应用程序或其他东西,我喜欢尽可能多地重用。这是我遇到的latest example(页面底部)。
我不担心 SEO,内容的重要性通常按 1-2-3 顺序排列。我真的不在乎它们是否都一样长。如果可能的话,我不想使用大量的标记。我的主要目标是让左右边缘与父元素齐平,并且每列之间的空间相等。
【问题讨论】:
-
投反对票有什么特别的原因吗?我展示了我的研究成果,问题很明确,目标似乎相当普遍和有用。
-
这个网站上的很多人都很可笑,除了投反对票之外别无他法……尤其是如果他们不想帮助您,并且如果您将答案奖励给其他人。
-
想知道我们能做些什么来阻止这种毫无价值的投反对票业务。关键是人们并不真正了解反对票的严重程度。
-
不要爱上这个家伙。你会浪费你的时间帮助他,然后他会改变他对你的问题!投反对票并运行!
-
你的意思是阅读像this这样的东西?