小程序之视图层--.wxss详解

WXSS是一套样式语言,用于描述WXML的组件样式。

官方文档表示,WXSS的选择器目前支持(“.class”、“#id”、“elemnt”、“element,element”、“::after”、“::before”),而且本地资源无法通过WXSS获取,所以WXSS中的样式都是用的网络图片,或者base64。

扩展特性

好在微信团队提供的WXSS具有CSS大部分特性。同时为了更适合开发微信小程序,微信团队对CSS进行了扩充以及修改。

与CSS相比,WXSS扩展的特性有:

尺寸单位

WXSS新增了针对移动端屏幕的两种尺寸单位:rpx与rem。

  • rpx:可以根据屏幕度进行自适应。规定屏幕宽为750rpx。iphone6屏幕宽度为375px,共有750个物理像素,则750rpx=375px=750物理像素,1rpx=0.5px=1物理像素。
  • rem:规定屏幕宽度为20rem;1rem=(750/20)rpx。

因此建议开发微信小程序时用iphone6作为视觉稿的标准。

导入样式

可以使用@import语句来导入外链样式表。@import后跟需要导入的外链样式表的路径,并用;表示语句结束。

复制代码
/**common.wxss**/
.small-p{
    padding:5px;
}

/**app.wxss**/
@import "common.wxss";
.middle-p{
    padding:15px;
}
复制代码

内联样式

内联样式指的是框架组件上支持使用style、class属性来控制组件的样式:

  • class:用于指定样式规则,其属性值是样式规则中类选择器名(样式类名)的集合。

    <view class="normal_view" />
  • style:静态的样式统一写到class中。style接收动态的样式,在运行时会进行解析,尽量避免将静态的样式写进style中,以免影响渲染速度。

    <view style="color:{{color}};"/>

全局样式和局部样式

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

  • app.wxss(全局样式)

  • page.wxss(局部样式)

框架组件

组件是视图层的基本组成单元,除自带某些功能外,也具有微信风格的样式。所有的组件与属性都需要使用小写字母。

  • 框架组件共有属性及描述


    表中的*为通配符,分别对应属性名(data-*,*代表自定义的属性)与事件名(bind*或catch*,*代表6种冒泡事件之一)。

同时每一个组件也可以有自定义的属性(称为“特殊独有属性”),用于对该组件的功能或样式进行修饰。

  • 属性只支持下面七种数据类型。

posted on   梁飞宇  阅读(41)  评论(0编辑  收藏  举报

努力加载评论中...
点击右上角即可分享
微信分享提示