Javascript IE中的AngularJS缺陷与风格vs ng风格

Javascript IE中的AngularJS缺陷与风格vs ng风格,javascript,css,angularjs,internet-explorer,microsoft-edge,Javascript,Css,Angularjs,Internet Explorer,Microsoft Edge,我正在使用AngularJSV1.1.5,发现了一个有趣的IE相关问题 在IE 9、10、11和Edge中,以下内容似乎不起作用,即使它在Chrome中运行良好: <div style="width: {{progress.percent()}}%;"></div> 鉴于此功能适用于所有浏览器: <div ng-style="{width: progress.percent() + '%'}"></div> 我很好奇为什么第一个选项在I

我正在使用AngularJSV1.1.5,发现了一个有趣的IE相关问题

在IE 9、10、11和Edge中,以下内容似乎不起作用,即使它在Chrome中运行良好:

<div style="width: {{progress.percent()}}%;"></div>

鉴于此功能适用于所有浏览器:

<div ng-style="{width: progress.percent() + '%'}"></div>


我很好奇为什么第一个选项在IE/Edge中不起作用。是否存在任何已知的错误?

当IE 9&10尝试呈现该HTML时,它基本上会删除要解析的HTML上发现的无效HTML

因此,具有<代码>样式=“显示:{{块”}“/CODE >视为无效HTML,因为它有未知的代码> {{}}} /代码>语法,它使该属性呈现为<代码>样式=“”/代码>


除了使用
ng样式
之外,您还可以使用
ng attr-*
指令,如下所示

<div ng-attr-style="{{'width: '+ progress.percent() +'%;'}}"></div>

progress.percent()
值发生更改时,将创建样式属性

有关更多信息,请查看此旧日志


问题也发生在边缘。就这样写吧

[ngStyle]="{'width.px': 20}"

这种使用ng attr样式和字符串连接的方法将我的屁股保存在IE11中。谢谢你,先生!