css.md
ngui/css
css
样式表类似于htmlcss
样式表,支持使用多级样式表,但只支持class
类
- 支持
3
种伪类型normal
、hover
、down
对应View.onHighlighted
事件中的 HIGHLIGHTED_NORMAL
、HIGHLIGHTED_HOVER
、HIGHLIGHTED_DOWN
- 这里的样式表没有权重的概念,使用直接赋值的方式与使用样式表权重都相同,
但需要注意先后顺序小心直接赋值会被样式表覆盖,
因为每次修改的样式表不会立即生效都会在渲染前才应用到视图。
- 样式表级数越多越复杂也表示需要更多的时间查询与处理。
create(sheets)
- 创建样式表
- @arg
sheets
{Object
}
check(cssName)
- 检查样式名称是否有效
CSS(sheets)
- 创建样式表,在调式状态时会检查样式名称是否有效
- @arg
sheets
{Object
}
Example:
import CSS from 'ngui/css'
import { GUIApplication, Root, Div } from 'ngui'
import 'ngui/dialog'
// 样式表都是全局的
CSS({
'.test': {
width: '50%',
height: '50%',
backgroundColor: '#00f',
},
'.test .a': {
width: 50,
height: 50,
},
'.test .a.b': { // 这种选择器会优先级会更高
height: 60,
},
// 应用这些伪类到目标,要使用它们对目标生效,需目标视图能够接收事件
'.test:normal .a': {
backgroundColor: '#0000',
},
'.test:hover': {
backgroundColor: '#f0f',
},
'.test:hover .a': {
backgroundColor: '#f00',
},
})
new GUIApplication().start(
// 需要注意jsx语法只能存在于.jsx文件中
<Root>
<Div class="test"onClick=(e=>{ dialog.alert('Hello!') })>
<Div class="a b" />
</Div>
</Root>
)
Enum PropertyName
- 以下是所有支持的样式表属性
- 这也是
KeyframeAction
中Frame
所支持的所有动作属性