要將樣式與組件進行綁定,須要建立一個同名的樣式文件,這樣樣式將會自動應用到組件
在組件中定義的樣式的做用域是屬於組件的,這樣容許組件能夠在不一樣的上下文中能夠複用,
能夠阻止其餘組件的樣式的複寫css
<template>
標記將替換爲標記包含組件的 demo 說明,包含了兩個組件,
cssParent
以及cssChild
每一個組件包含一個<p>
標籤,cssParent.css
樣式定義xx-large
p
樣式,樣式只應用到parent p 標籤,而不是在child 中的html標籤ide
cssParent.js性能
import { LightningElement } from 'lwc';
export default class CssParent extends LightningElement {}
cssParent.htmlui
<template>
<p>To Do List</p>
<example-css-child></example-css-child>
</template>
cssParent.cssspa
p {
font-size: xx-large;
}
cssChild.jscode
import { LightningElement } from 'lwc';
export default class CssChild extends LightningElement {}
cssChild.htmlcomponent
<template>
<p>To Do Item</p>
</template>
cssChild.csshtm
/*
:host {
display: block;
background: whitesmoke;
}
*/
父組件應用樣式到child 組件,這個能夠經過元素樣式的方式ip
/* cssParent.css */
p {
font-size: xx-large;
}
example-css-child {
display: block;
background: whitesmoke;
}
子組件樣式的應用,能夠經過:host
配置樣式,以及相似parent 的樣式配置
/* cssChild.css */
:host {
display: block;
background: whitesmoke;
}
同時對於組件咱們能夠添加<slot></slot>
方便的進行內容填充
:host-context()
::slotted
https://lwc.dev/guide/reference#component-bundles
https://lwc.dev/guide/composition#pass-markup-into-slots