我有一个非常奇怪的问题,即在注入 html 时未应用 css 规则这是注入 html 的代码:
decorate(text)
{
return this.sanitizer.bypassSecurityTrustHtml(text.replace('Doe','<b>Doe</b>'));
}
在模板中:
<h1 [innerHTML]="decorate('JohnDoe')"></h1>
<h1>Jane<b>Doe</b></h1>
我添加了一个 CSS 规则
h1 { color:#888; }
h1 b {color:#ff0000;}
但是,JognDoe 仍然是灰色的,而 JaneDoe 按预期将 Doe 变成了红色。为什么 Johns'Doe 不呈现红色?
在检查器中呈现的 HTML 如下所示:
<h1 _ngcontent-c11="">John<b>Doe</b></h1>
<h1 _ngcontent-c11="">Jane<b _ngcontent-c11="">Doe</b></h1>
对我来说,Johndoe 没有理由是灰色的..:
我用这个问题组装了一个小沙箱: