角度ng-repeat和内联块

时间:2015-06-19 06:55:04

标签: javascript html css angularjs

我继承了一些在表单中使用水平列表的代码:

<ul>
  <li>...</li>
  <li>...</li>
</ul>

其中<li>是内联块。我需要用ng-repeat填充这些列表:

<ul>
  <li ng-repeat="item in items">...</li>
</ul>

为了避免(众所周知的)内联块元素之间的间隙,必须编写它们:

<li>...</li><li>
...</li>

或者:

<li>...</li><!--
--><li>...</li>

但我不知道如何用ng-repeat实现这一点! 任何人? :)

P.S。:我读过this。我想知道是否有一个优雅的角度特定的&#34;溶液

2 个答案:

答案 0 :(得分:2)

您可以通过应用css规则管理它们:

li{
display: inline-block;
margin-right: -4px;
}

或者,如果您不想使用负边距,则可以使用float: left;代替内联块。

然而,这会更昂贵。我认为另一种解决方案是使用ng-repeat-start和ng-repeat-end,如下所示:

<ul>
  <li ng-repeat="item in items">...</li><!--
  <myDir ng-repeat-end>--></myDir>
</ul>

您可能需要使用&gt;代替>等等。 并使用compile函数删除元素,以便只使用element.unwrap()

保留-->

我不确定上述方法是否可以正常工作,因为您需要。您可以在项目中尝试一次,然后告诉我。

答案 1 :(得分:1)

如果我们想要使用css选项......

ul {
   font-size:0;
}


li {
   display:inline-block;
   font-size:12pt;
}