Как использовать ngStyle для добавления фонового изображения? Мой код не работает:
this.photo = 'http://dl27.fotosklad.org.ua/20121020/6d0d7b1596285466e8bb06114a88c903.jpg';
<div [ngStyle]="{'background-image': url(' + photo + ')}"></div>
javascript
html
css
angular
Игнат
источник
источник
Ответы:
Я думаю, вы могли бы попробовать это:
Читая ваше
ngStyle
выражение лица, я предполагаю, что вы пропустили "'" ...источник
this.photo = `url(${photo})`;
[style.background-image]='photo'
.[ngStyle]
и[style.background-image]
сбой при визуализации.Также вы можете попробовать это:
[style.background-image]="'url(' + photo + ')'"
источник
<div [ngStyle]="{ color: 'red', 'font-size': '22px' }">First</div>
и<div [style.color]="'red'" [style.font-size.px]="22">Second</div>
Смотрите также
источник
Похоже, ваш стиль обработан, чтобы обойти его, попробуйте использовать метод bypassSecurityTrustStyle из DomSanitizer.
источник
Использовать вместо
источник
Мое фоновое изображение не работало, потому что в URL-адресе был пробел, и поэтому мне нужно было его закодировать.
Вы можете проверить, возникла ли у вас проблема, попробовав другой URL-адрес изображения, в котором нет символов, требующих экранирования.
Вы можете сделать это с данными в компоненте, просто используя Javascripts, встроенные в encodeURI () метод .
Лично я хотел создать для него канал, чтобы его можно было использовать в шаблоне.
Для этого вы можете создать очень простую трубу. Например:
SRC / приложение / трубы / кодировать-uri.pipe.ts
SRC / приложение / app.module.ts
src / app / app.component.ts
src / app / app.component.html
источник
Вы можете использовать 2 метода:
Способ 1
Способ 2
Примечание: важно заключить URL-адрес в « char.
источник
В большинстве случаев изображение не отображается, потому что ваш URL-адрес содержит пробелы. В вашем случае вы почти все сделали правильно. За исключением одного - вы не добавляли одинарные кавычки, как если бы вы указывали фоновое изображение в css, т.е.
Для этого экранируйте символ кавычки в HTML через \ '
источник
Мое решение с использованием оператора if..else. Если вы хотите избежать ненужных разочарований, всегда рекомендуется проверять, существует ли ваша переменная и установлена ли она. В противном случае предоставьте резервную копию на всякий случай; Вы также можете указать несколько свойств стиля, например
background-position: center
, и т. Д.источник