微信小程序开发【六】-- wxss详解

news/2024/10/30 21:29:55/

系列文章目录

微信小程序开发【一】-- 初识小程序 传送门
微信小程序开发【二】-- 小程序入门 传送门
微信小程序开发【三】-- 项目结构概述 传送门
微信小程序开发【四】-- 配置详解 传送门
微信小程序开发【五】-- wxml详解 传送门
微信小程序开发【六】-- wxss详解 传送门
微信小程序开发【七】-- js详解 传送门
微信小程序开发【八】-- 页面栈和模块化 传送门
微信小程序开发【九】-- 初识小程序云开发 传送门
微信小程序开发【十】-- 云函数/云数据库/云存储 传送门


文章目录

  • 系列文章目录
  • 一、概述
  • 二、尺寸单位
  • 三、样式导入
  • 四、内联样式
  • 五、全局样式和局部样式
  • 六、支持的选择器
  • 七、框架组件
  • 总结


一、概述

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。

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

设备rpx换算px (屏幕宽度/750)px换算rpx (750/屏幕宽度)
iPhone51rpx = 0.42px1px = 2.34rpx
iPhone6/6s1rpx = 0.5px1px = 2rpx
iPhone6/6s Plus1rpx = 0.552px1px = 1.81rpx

三、样式导入

  • 可以使用@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中相同的选择器。

六、支持的选择器

选择器样例样例描述
.class.intro选择所有拥有 class=”intro” 的组件
#id#firstname选择拥有 id=”firstname” 的组件
elementview选择所有 view 组件
element, elementview,.headercheckbox 选择所有文档的 view 组件和所有的 checkbox 组件
::afterview::after在 view 组件后边插入内容
::beforeview::before在 view 组件前边插入内容

七、框架组件

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

  • 框架组件共有属性及描述
属性名类型描述注解
idString组件唯一标识保持整个页面唯一
classString组件的样式类在对应的WXSS中定义的样式类
styleString组件的内联样式可以动态设置的内联样式
hiddenBoolean组件是否显示所有组件默认显示
data-*Any自定义属性组件上触发事件时,会发送给事件处理函数
bind*/catch*EventHandler组件的事件

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

  • 同时每一个组件也可以有自定义的属性(称为“特殊独有属性”),用于对该组件的功能或样式进行修饰。但属性只支持下面七种数据类型。
类型描述注解
Boolean布尔值组件写上该属性,不管该属性等于什么,其值都为true,只有组件上没有写该属性时,属性值才为false。如果属性值为变量,变量的值会被转换为Boolean类型
Number数字1,2.5
String字符串“string”
Array数组[1,“string”]
Object对象{key:value}
EventHandler事件处理函数名"handlerName"是Page中定义的事件处理函数名
Any任意属性

总结

WXSS(WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式。WXSS 具有 CSS 大部分特性。 同时为了更适合开发微信小程序,对 CSS 进行了扩充以及修改了:尺寸单位、样式导入。

  • 尺寸单位:rpx(responsive pixel): 可以根据屏幕宽度进行自适应。规定屏幕宽为750rpx。以iPhone6为例:1rpx = 0.5px,1px = 2rpx。

  • 样式导入:使用@import语句导入外部样式,@import后跟外部样式文件的相对路径。。


http://www.ppmy.cn/news/305219.html

相关文章

小程序wxs

什么是wxs wxs&#xff08;weixin script&#xff09;是小程序独有的一套脚本语言&#xff0c;结合wxml&#xff0c;可以构建出页面的结构 wxs的应用场景 wxml中无法调用在页面的.js中定义的函数&#xff0c;但是&#xff0c;wxml中可以调用wxs中的函数。因此&#xff0c;小程序…

微信小程序wx.request(1)——基本操作

微信小程序的wx.request是微信小程序最早生成的数据库传输模式&#xff0c;数据传输简单明确。接下来&#xff0c;我们来操作下微信小程序如何链接数据库。 首先&#xff0c;wx.request整体的架构如下&#xff1a; wx.request({url:https://域名ID/index.php, //必填&#xff…

《五》微信小程序中的 WXS(WeiXin Script)

WXS 是小程序的一套脚本语言&#xff0c;结合 WXML&#xff0c;可以构建出页面的结构。 WXS 代码可以编写在 WXML 文件中的 <wxs> 标签内或以 .wxs 为后缀名的文件内。每一个 <wxs> 标签和 .wxs 文件都是一个单独的模块&#xff0c;每个模块都有自己独立的作用域&…

微信小程序2-WXSS,WXS

微信小程序1-小程序基础,开发工具安装使用 1.WXSS WXSS (WeiXin Style Sheets)是一套样式语言&#xff0c;用于描述 WXML 的组件样式 为了适应广大的前端开发者&#xff0c;WXSS 具有 CSS 大部分特性。同时为了更适合开发微信小程序&#xff0c;WXSS 对 CSS 进行了扩充以及修…

微信小程序基础02--WXML,WXSS基础

1.WXML语法参考 1.1数据绑定 WXML 中的动态数据均来自对应 Page 的 data。数据绑定&#xff0c;js文件里的data属性,在wxml中直接使用{{ }}进行绑定。与vue的写法十分相似。 特别注意&#xff1a;bool类型不要直接写 checked“false”&#xff0c;其计算结果是一个字符串&…

wx小程序

wx小程序 1.基础知识点 数据在js的data中绑定 在.wxml中渲染使用双花括号 即&#xff1a;{{}} 在渲染时可以用三元表达式和算法 在.wxss中写css样式 .wxml中没有div 标签&#xff0c;但是有相对应的标签view 2.事件绑定 1).点击事件 给标签绑定事件 <text>{{num…

微信小程序开发之——weui-wxss的使用

概述&#xff1a; WeUI 是一套同微信原生视觉体验一致的基础样式库&#xff0c;由微信官方设计团队为微信内网页和微信小程序量身设计&#xff0c;令用户的使用感知更加统一。包含button、cell、dialog、 progress、 toast、article、actionsheet、icon等各式元素。 预览&…

微信小程序 Wxs篇

WXS&#xff08;WeiXin Script&#xff09;是小程序的一套脚本语言&#xff0c;结合 WXML&#xff0c;可以构建出页面的结构。 【注意】 WXS 不依赖于运行时的基础库版本&#xff0c;可以在所有版本的小程序中运行。WXS 与 JavaScript 是不同的语言&#xff0c;有自己的语法&…