微信小程式前端樣式WXSS書寫 一. WXSS的簡單介紹 WXSS(WeiXin Style Sheets)是一套樣式語言,用於描述 WXML 的組件樣式。 與 CSS 相比,WXSS 擴展的特性有: 尺寸單位 樣式導入 二. 尺寸單位 rpx(responsive pixel): 可以根據屏幕寬度 ...
微信小程式前端樣式WXSS書寫
一. WXSS的簡單介紹
WXSS(WeiXin Style Sheets)是一套樣式語言,用於描述 WXML 的組件樣式。
與 CSS 相比,WXSS 擴展的特性有:
- 尺寸單位
- 樣式導入
二. 尺寸單位
- rpx(responsive pixel): 可以根據屏幕寬度進行自適應。規定屏幕寬為750rpx。如在 iPhone6 上,屏幕寬度為375px,共有750個物理像素,則750rpx = 375px = 750物理像素,1rpx = 0.5px = 1物理像素。
設備 | 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 |
建議: 開發微信小程式時設計師可以用 iPhone6 作為視覺稿的標準。
註意: 在較小的屏幕上不可避免的會有一些毛刺,請在開發時儘量避免這種情況。
三. 樣式導入
使用@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 組件 |
::after | view::after |
在 view 組件後邊插入內容 |
::before | view::before |
在 view 組件前邊插入內容 |
六. 全局樣式與局部樣式
定義在 app.wxss 中的樣式為全局樣式,作用於每一個頁面。在 page 的 wxss 文件中定義的樣式為局部樣式,只作用在對應的頁面,並會覆蓋 app.wxss 中相同的選擇器。