填写这份《一分钟调查》,帮我们(开发组)做得更好!去填写Home

ViewEncapsulation

Defines template and style encapsulation options available for Component's Component.

查看"说明"...

      
      enum ViewEncapsulation {
  Emulated: 0
  Native: 1
  None: 2
  ShadowDom: 3
}
    

说明

See encapsulation.

成员列表

成员说明
Emulated: 0

Emulate Native scoping of styles by adding an attribute containing surrogate id to the Host Element and pre-processing the style rules provided via styles or styleUrls, and adding the new Host Element attribute to all selectors.

This is the default option.

Native: 1
None: 2

Don't provide any template or style encapsulation.

ShadowDom: 3

Use Shadow DOM to encapsulate styles.

For the DOM this means using modern Shadow DOM and creating a ShadowRoot for Component's Host Element.

使用说明

Example

@Component({ selector: 'my-app', template: ` <h1>Hello World!</h1> <span class="red">Shadow DOM Rocks!</span> `, styles: [` :host { display: block; border: 1px solid black; } h1 { color: blue; } .red { background-color: red; } `], encapsulation: ViewEncapsulation.ShadowDom }) class MyApp { }
      
      @Component({
  selector: 'my-app',
  template: `
    <h1>Hello World!</h1>
    <span class="red">Shadow DOM Rocks!</span>
  `,
  styles: [`
    :host {
      display: block;
      border: 1px solid black;
    }
    h1 {
      color: blue;
    }
    .red {
      background-color: red;
    }

  `],
  encapsulation: ViewEncapsulation.ShadowDom
})
class MyApp {
}