微信小程序:组件样式
一、 组件内的样式 对 外部样式的影响:
答:1.组件内的class样式,只对组件wxml内的节点生效,对于引用组件的Page页面不生效。
2.组件内部能使用id选择器、属性选择器、标签选择器
二、 外部样式 对 组件内样式的影响:
答:1.外部使用class样式,只对外部的wxml的节点生效,对组件内是不生效的
2.外部使用id选择器、属性选择器、不会对组件内容产生影响
3.外部使用了标签选择器,会对组件内产生影响
总结:组件内的class样式和组件外的class样式,默认有隔离效果,只对"自身"有效
为了防止样式的错乱,官方不推荐使用id、属性、标签选择器;
三、 如何使样式可以相互影响?
答:在自定义组件的 .js 文件中的Component({})对象里面可以传入一个options属性,
options属性中有一个 styleIsolation属性(隔离属性)
styleIsolation属性有3个值:
默认值:isoIated:表示启用样式隔离,在自定义组件内外,使用class指定的样式将不会相互影响
页面影响组件:apply-shared:表示页面wxss样式将影响到组自定义组件,但自定义组件wxss中指定的样式不会影响页面
相互影响:shared:表示页面wxss样式将影响到自定义组件,自定义组件wxss中指定的样式也会影响页面