风格属性中的Angular Bug IE10变量

时间:2013-09-25 20:37:39

标签: angularjs

如果我这样做:

<div style="margin-left: 50px;">TEST1</div>
<div style="margin-left: {{50}}px;">TEST2</div>

http://jsfiddle.net/XeVHL/1/

值test2的左边距不会被应用,这只在IE中,是否有任何建议可以解决这个问题?

enter image description here

3 个答案:

答案 0 :(得分:9)

作为一种解决方法,您可以使用ng-style

<div ng-style="{ 'margin-left': 50 + 'px'}">TEST2 {{50}}</div>

小提琴:http://jsfiddle.net/YXe8Z/

答案 1 :(得分:1)

关于这个bug,奇怪的是只有IE才会这样 无论如何,你可以ng-style指令用于此目的 - 因为如果你要等到Angular解析插值并正确应用样式,最好用适当的指令来做:)

<div ng-style="{ 'margin-left': 50 + 'px' }">TEST2</div>

http://jsfiddle.net/q4UKD/

答案 2 :(得分:0)

ng-style vs style
只是一个快速提示 - 使用''来定义ng-style属性。例如,使用'margin-left'代替margin-left,因为如果只有一个单词属性如宽度,它可以正常工作。 width,top,left ...不需要是'width','top','left',但为了良好练习,请使用'width'。