QSS(QQ Style Sheets)是一套样式语言,用于描述 QML 的组件样式。
QSS 用来决定 QML 的组件应该怎么显示。
为了适应广大的前端开发者,QSS 具有 CSS 大部分特性。同时为了更适合开发QQ小程序,QSS 对 CSS 进行了扩充以及修改。
与 CSS 相比,QSS 扩展的特性有:
设备
rpx换算px (屏幕宽度/750)
px换算rpx (750/屏幕宽度)
iPhone5
1rpx = 0.42px
1px = 2.34rpx
iPhone6
1rpx = 0.5px
1px = 2rpx
iPhone6 Plus
1rpx = 0.552px
1px = 1.81rpx
建议: 开发QQ小程序时设计师可以用 iPhone6 作为视觉稿的标准。
注意: 在较小的屏幕上不可避免的会有一些毛刺,请在开发时尽量避免这种情况。
使用@import
语句可以导入外联样式表,@import
后跟需要导入的外联样式表的相对路径,用;
表示语句结束。
示例代码:
/** common.qss **/
.small-p {
padding:5px;
}
/** app.qss **/
@import "common.qss";
.middle-p {
padding:15px;
}
框架组件上支持使用 style、class 属性来控制组件的样式。
<view style="color:{{color}};" />
.
,样式类名之间用空格分隔。<view class="normal_view" />
目前支持的选择器有:
选择器 | 样例 | 样例描述 |
---|---|---|
.class | .intro | 选择所有拥有 class="intro" 的组件 |
#id | #firstname | 选择拥有 id="firstname" 的组件 |
element | view | 选择所有 view 组件 |
element, element | view, checkbox | 选择所有文档的 view 组件和所有的 checkbox 组件 |
::after | view::after | 在 view 组件后边插入内容 |
::before | view::before | 在 view 组件前边插入内容 |
定义在 app.qss 中的样式为全局样式,作用于每一个页面。在 page 的 qss 文件中定义的样式为局部样式,只作用在对应的页面,并会覆盖 app.qss 中相同的选择器。