为背景图像速记正确格式化 ng-style

Posted

技术标签:

【中文标题】为背景图像速记正确格式化 ng-style【英文标题】:Formatting ng-style correctly for background-image shorthand 【发布时间】:2019-10-27 13:58:54 【问题描述】:

下面这行有问题。我的应用程序中正确显示了我的高度和宽度。如果我包含+ character.offsetX + 'px' + character.offsetY + 'px',则不会出现背景图像样式。

Character.offsetX 和 offsetY 是从字符对象提供的硬编码数字。

我在网上找到的示例非常简单,没有显示如何使用background-image 的简写版本来设置background-position

<li *ngFor="let character of this.characterList" [ngStyle]= "'height':'50px', 'width':'50px', 'background-image':'url(' + character.fullImagePath + ')' + character.offsetX + 'px' + character.offsetY + 'px' "

【问题讨论】:

【参考方案1】:

background-image 不允许设置其他 background-* 属性 - 您需要使用 background 简写来代替:

<li *ngFor="let character of this.characterList" [ngStyle]= "'height':'50px', 'width':'50px', 'background':'url(' + character.fullImagePath + ') ' + character.offsetX + 'px ' + character.offsetY + 'px' "

【讨论】:

不要忘记每个character.offset...之前的空格。

以上是关于为背景图像速记正确格式化 ng-style的主要内容,如果未能解决你的问题,请参考以下文章

CSS 背景属性 - 简写与长格式

通过 angularJS ng-style 可变背景图像

在图像标签上使用角度 ng-style 来调出背景图像

为啥我们在 AngularJS 中使用 ng-style 而不是 style 进行 css 格式化?

css 背景图像速记

PHP 将速记日期转换为长格式