WXSS

最近更新时间:2024-03-21 15:51:52

我的收藏
WXSS(WeiXin Style Sheets)是一套样式语言,用于描述 WXML 组件的样式。它决定了 WXML 组件的显示效果。
为了方便广大前端开发者使用,WXSS 借鉴了 CSS 的大部分特性。同时,为了更好地适应开发 TMF 小程序的需求,WXSS 进行了一些扩充和修改。
与 CSS 相比,WXSS 扩展了以下特性:
注意:
iOS 8 及以下的 iOS 版本,如使用 flexbox 布局,需添加display: -webkit-flex属性。

尺寸单位

rpx(responsive pixel):可以根据屏幕宽度进行自适应。规定屏幕宽为750rpx。例如在 iPhone 6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px = 1物理像素。
在腾讯云小程序平台开发中,我们使用 rpx 作为尺寸单位,以适应不同屏幕尺寸的需求。下面是 rpx 和 px 之间的换算关系:
设备屏幕宽度为 750px 时,1rpx = 0.5px。
设备屏幕宽度为 750px 时,1px = 2rpx。
根据不同的设备屏幕宽度,rpx 和 px 的换算关系也会有所不同。例如:
在 iPhone 5 上,设备屏幕宽度为 320px,1rpx = 0.42px,1px = 2.34rpx。
在 iPhone 6 上,设备屏幕宽度为 375px,1rpx = 0.5px,1px = 2rpx。
在 iPhone 6 Plus 上,设备屏幕宽度为 414px,1rpx = 0.552px,1px = 1.81rpx。
建议在设计应用或小程序时,设计师可以用 iPhone 6作为视觉稿的标准。但需要注意的是,在较小的屏幕上可能会出现一些毛刺,因此在开发时需要尽量避免这种情况。

样式导入

使用@import语句可以导入外联样式表,@import后跟需要导入的外联样式表的相对路径,用;表示语句结束。
示例代码:
/** common.wxss **/
.small-p {
padding:5px;
}
/** app.wxss **/
@import "common.wxss";
.middle-p {
padding:15px;
}

内联样式

框架组件上支持使用 style、class 属性来控制组件的样式。
style:静态的样式统一写到 class 中。style 接收动态的样式,在运行时会进行解析,请尽量避免将静态的样式写进 style 中,以免影响渲染速度。
<view style="color:{{color}};" />
class:用于指定样式规则,其属性值是样式规则中类选择器名(样式类名)的集合,样式类名不需要带上.,样式类名之间用空格分隔。
<view class="normal_view" />

选择器

目前支持的选择器有:
选择器
样例
样例描述
.class
.intro
选择所有拥有 class="intro" 的组件
#id
#firstname
选择拥有 id="firstname" 的组件
element
view
选择所有 view 组件
element,element
view, checkbox
选择所有文档的 view 组件和所有的 checkbox 组件
::aftter
view::after
在 view 组件后边插入内容
::before
view::before
在 view 组件前边插入内容

全局样式与局部样式

定义在 app.wxss 中的样式为全局样式,作用于每一个页面。在 page 的 wxss 文件中定义的样式为局部样式,只作用在对应的页面,并会覆盖 app.wxss 中相同的选择器。