Angular JS:具有绑定值的内联样式适用于 mac 而不是 windows
Angular JS: inline style with bound value works on mac not windows
我用 ng-repeat 构建了一个 table,显示项目的类型规范,列为 "swatches":
如您所见,在 Mac Safari 和 Chrome 上运行良好。但是,在 IE 11/Win 8 上:
table行是这样的:
<tbody>
<tr ng-repeat="item in type.header">
<td class="{{item.extraclass}}">{{item.tag}} – {{item.font}}</td>
<td>{{item.use}}</td>
<td>
{{item.tag}}{{item.class}}
<span class="swatch" style="background-color:{{item.color}};color: #fff">{{item.color}}</span>,
{{item.tag}}{{item.altclass}}
<span class="swatch" style="background-color:{{item.altcolor}};color: #fff">{{item.altcolor}}</span>,
{{item.tag}}.ko
<span class="swatch" style="background-color:#fff; color:#2e2e2e">#FFFFFF</span>
</td>
</tr>
</tbody>
出于某种原因,IE 似乎不喜欢内联样式标签。
在 Safari 浏览器中检查代码看起来符合预期。您可以看到带有背景颜色和颜色的样式标签:
但是在IE11中检查,全乱了。只有一种颜色,它是白色和 rgb:
那么,为什么这适用于 Mac 而不是 IE?我对我的语法做了一些假设,但我已经尝试了一些东西,但到目前为止没有结果。
使用ng-class
代替class
<td ng-class="item.extraclass">{{item.tag}} – {{item.font}}</td>
您需要使用ng-style
:
<span ng-style="{'background-color':item.color, 'color': '#fff'}">
我用 ng-repeat 构建了一个 table,显示项目的类型规范,列为 "swatches":
如您所见,在 Mac Safari 和 Chrome 上运行良好。但是,在 IE 11/Win 8 上:
table行是这样的:
<tbody>
<tr ng-repeat="item in type.header">
<td class="{{item.extraclass}}">{{item.tag}} – {{item.font}}</td>
<td>{{item.use}}</td>
<td>
{{item.tag}}{{item.class}}
<span class="swatch" style="background-color:{{item.color}};color: #fff">{{item.color}}</span>,
{{item.tag}}{{item.altclass}}
<span class="swatch" style="background-color:{{item.altcolor}};color: #fff">{{item.altcolor}}</span>,
{{item.tag}}.ko
<span class="swatch" style="background-color:#fff; color:#2e2e2e">#FFFFFF</span>
</td>
</tr>
</tbody>
出于某种原因,IE 似乎不喜欢内联样式标签。
在 Safari 浏览器中检查代码看起来符合预期。您可以看到带有背景颜色和颜色的样式标签:
但是在IE11中检查,全乱了。只有一种颜色,它是白色和 rgb:
那么,为什么这适用于 Mac 而不是 IE?我对我的语法做了一些假设,但我已经尝试了一些东西,但到目前为止没有结果。
使用ng-class
代替class
<td ng-class="item.extraclass">{{item.tag}} – {{item.font}}</td>
您需要使用ng-style
:
<span ng-style="{'background-color':item.color, 'color': '#fff'}">