【问题标题】:Equal spacing div's in a container容器中的等间距div
【发布时间】:2013-02-14 22:20:58
【问题描述】:

这是我的例子:http://jsfiddle.net/rtCP3/62/

我有 3 个(或更多!)div 我想在一个容器中平均分配空间。当使用带有 ng-repeat 的角度时,样式不会被拾取。当我硬编码完全相同的元素时,它工作得很好。

角度输出:

<div class="container ng-scope" ng-controller="ParentCtrl">
     <!-- ngRepeat: item in list -->
     <div class="box ng-scope ng-binding" data-ng-repeat="item in list">item1</div>
     <div class="box ng-scope ng-binding" data-ng-repeat="item in list">item2</div>
     <div class="box ng-scope ng-binding" data-ng-repeat="item in list">item3</div>
     <div class="box ng-scope ng-binding" data-ng-repeat="item in list">item4</div>
     <span class="stretch"></span>
</div>

硬编码:

<div class="container">
    <div class="box">Item 1</div>
    <div class="box">Item 2</div>
    <div class="box">Item 3</div>
    <div class="box">Item 4</div>
    <span class="stretch"></span>
</div>

我基于这个 stackoverflow 问题:Fluid width with equally spaced DIVs

【问题讨论】:

  • 我能够通过删除文本对齐 CSS 使框更靠近(没有任何其他明显的问题)。
  • 这不是我想要的,请参阅其他 stackoverflow 问题的链接。

标签: html css angularjs


【解决方案1】:

这行得通。我不知道为什么,但它的空间是一样的:

 <div class="container" ng-controller="ParentCtrl">
     <span data-ng-repeat="item in list">
         <div class="box">{{ item.name }}</div>
     </span>
     <span class="stretch"></span>
 </div>

也许其他人可以解释为什么会这样,但是在你的小提琴中重复 span 元素但里面有 box 类使得两个实现看起来一样。

【讨论】:

  • +1。我不明白为什么这行得通/为什么它一开始就不起作用,但它解决了问题。
  • Matthew,同时删除你的文本对齐 CSS。然后它工作:jsfiddle.net/wagedomain/wtWV6
  • 这是我为测试它而修改的小提琴,jsfiddle.net/SC34z(Chrome 版本 25.0.1364.97)。
  • 啊,在您发布的 html 中,您没有输入 span class="Stretch" 您可以添加它,我会接受吗?非常感谢!
  • 当然。我实际上从我的小提琴中删除了 span = stretch 并更改了 CSS 以获得相同的效果,但我可以将其重新添加。
【解决方案2】:

您引用的 SO 问题中的评论说

我花了 3 小时才发现 html 中的每个框之间应该有空格。 'Justify' 扩展元素之间的空格,如果您的内容是 &lt;div/&gt;&lt;div/&gt;&lt;div/&gt;,则它不起作用。你需要有&lt;div/&gt; &lt;div/&gt; &lt;div/&gt;

我相信 ng-repeat 不会在其输出之间放置任何空格,因此所有的 div 都彼此正对着,从而导致了问题。

您可以创建自己的类似 ng-repeat 的指令来添加空格。

【讨论】:

  • 哇...我从没想过要看看那个。在我对 dom 的检查中,我只是按照正确的顺序看到了它们。以后我会保留这个想法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多