我正在尝试通过以下方式将图像设置为整个页面的背景:
app.component.html
<div [ngStyle]="{'background-image': 'url(' + somePhoto + ')'}">
<h1>
Hello, world
</h1>
</div>
app.component.ts(注意:封装设置为无)
import { Component, ViewEncapsulation } from '@angular/core';
import { OnInit } from '@angular/core/src/metadata/lifecycle_hooks';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
encapsulation: ViewEncapsulation.None
})
export class AppComponent implements OnInit {
constructor() { }
ngOnInit(): void {
console.log('hello, world');
}
}
app.component.css
body {
background-repeat: no-repeat;
background-size: cover;
background-position: center center;
background-attachment: fixed;
}
问题是,当使用 [ngStyle] 时,图像仅覆盖页面的标题部分。
如果不是 ngStyle,我直接选择正文,例如:
document.body.style.backgroundImage = 'url(someimage.jpg)';
图像覆盖了整个页面,这是我想要发生的。但是有人告诉我直接选择身体是不好的做法。
如何让 [ngStyle] (或其他任何东西)创建覆盖整个页面的背景图像?
谢谢