微信小程序的WXSS和全局、页面配置详细讲解

 更新时间:2022年08月02日 12:03:56   作者:前端小刘不怕牛牛  
WXSS(WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式,下面这篇文章主要给大家介绍了关于微信小程序WXSS和全局、页面配置的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下

一,WXSS

首先我们先介绍一下wxss,wxss是微信小程序独有的模板样式,它类似于web开发中的CSS,具备CSS大部分的功能,同时,它还拓展出了几个内容功能,接下来牛牛介绍一下新增的rpx尺寸单位以及样式导入@import。

1.1 rpx尺寸单位

rpx尺寸单位是微信独有的,主要用来解决屏适配问题。怎么回事呢?我们知道,手机款式很多,手机屏幕的大小也并不一致,我们想要让小程序根据屏幕宽度自动完成屏适配,于是有了rpx,rpx将屏幕宽度等分为750份,我们在开发的时候使用rpx尺寸单位,到使用的时候就会将其换算成像素单位,实现屏适配。

tip:

微信建议开发者, 开发微信小程序时设计师可以用 iPhone6 作为视觉稿的标准。

1.2 样式导入@import

在CSS中,我们用<link>标签导入外联样式表,在微信小程序中,单个页面的wxss文件渲染页面并不用我们操心,不过有时候我们需要格外导入外联样式,而在WXSS中,我们使用@import实现。

语法:@import "相对路径"

1.3 全局样式

微信小程序的全局样式是写在根目录的app.wxss文件中的,全局样式就意味着里面的样式将在每一个页面均生效。

需要注意的是,当全局样式与页面的局部样式发生冲突时,但局部选择器权重大于或等于全局样式选择器权重的时候,会采取就近原则,用局部样式的定义渲染。

补充:wxss的扩展-样式导入

在某些情况下,可能会将样式分在多个 wxss 文件中,方便对样式的管理(实际项目中,一般不会将一个页面的所有样式都写到一个 page.wxss 文件中,而是在该页面文件夹下新建一个 style 文件夹,其中新建一些 wxss 文件,方便管理样式),这个时候,就需要使用样式导入(将 style 文件夹下的 wxss 文件导入到 page.wxss 中),从而让单独的 wxss 生效。

在一个 wxss 中导入另一个 wxss 文件:

(1)使用 @import 进行导入

(2)@import 后跟需要导入的外联样式表的相对路径(或者绝对路径也可以),用;表示语句结束。

/*page.wxss为文件中导入其他 wxss 样式*/
@import './style/box.wxss';
@import './style/container.wxss';

也可以在 app.wxss 中导入一些 wxss 样式文件,比如在实际项目开发中可能会用到很多按钮,为了使这些按钮样式得到统一,就可以在 app.wxss 中导入一个专门为按钮写的样式。上面这种情况在开发中一般会在根目录下新建一个 style 文件夹,然后再在该文件夹下新建一个 btn.wxss 样式文件:.btn{width:100px;height:60px;display:inline-block};。然后到 app.wxss 文件中对该文件进行导入:@import './style/btn.wxss';。完成上述步骤之后,在项目开发中,只需要对按钮组件加上一个 .btn类名 即可。

二,全局配置

全局配置我们在之前的文章也有做过一定的了解,根目录下的app.json文件就是专门放全局配置的地方。

app.json文件中主要有六部分。

pages,用来存放页面的路径,第一个放的就是小程序的首页。

  "pages": [
    "pages/index/index",
    "pages/list/list"
  ],

window,页面的窗口外观,如:

  "window": {
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTextStyle": "black",
    "navigationBarTitleText": "第一个小程序"
  },

tabBar,页面的底部栏,微信小程序中这部分经常作为跳转页面的工具。

  "tabBar": {
    "list": [
      {
        "pagePath": "pages/index/index",
        "text": "首页"
      },
      {
        "pagePath": "pages/list/list",
        "text": "目录"
      }
    ],
    "color": "#fff",
    "selectedColor": "#999",
    "backgroundColor": "#111"
  },

还有一个常见的就是style,用来设置是否启用新版组件样式,如果需要,需要让style的值为v2,如果不采用,直接把style那一行删掉即可。

下面这张图方便理解

2.1 属性

属性名中以navigationBar开头的,就是我们的导航栏部分,也就是写在我们app.jsonwindow下。

background开头的,表示对背景区域进行设置,背景区域在微信小程序默认为不可见,只有当我们下拉显示时才会出现,一般在开发中还有伴随加载事件和图片。

上面各属性其实我们通过说明列可以明白个大概,博主就不一一解释。

需要注意的是,最后一栏的onReachBottomDistance属性,指的是页面上拉触发据页面底部距离,也就是你玩手机往下滑的时候,屏幕底部离页面底部多远触发,一般与刷新新内容配合,如内容不够需要拉取更多内容。

三,页面配置

app.json中的部分配置也可以在页面的json文件中配置,不过需要注意的是,当全局配置和页面配置冲突时,也是会遵循就近原则,冲突属性的值以页面配置为准。

而且,在页面配置中,我们不需要再次指定为window字段的属性。

直接,如下所示:

{
  "navigationBarBackgroundColor": "#ffffff",
  "navigationBarTextStyle": "black",
  "navigationBarTitleText": "微信接口功能演示",
  "backgroundColor": "#eeeeee",
  "backgroundTextStyle": "light"
}

总结

到此这篇关于微信小程序WXSS和全局、页面配置的文章就介绍到这了,更多相关微信小程序WXSS和全局、页面配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解微信小程序开发聊天室—实时聊天,支持图片预览

    详解微信小程序开发聊天室—实时聊天,支持图片预览

    这篇文章主要介绍了微信小程序实时聊天支持图片预览,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • 使用原生JS实现滚轮翻页效果的示例代码

    使用原生JS实现滚轮翻页效果的示例代码

    这篇文章主要介绍了使用原生JS实现滚轮翻页效果的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-05-05
  • JS搜狐面试题分析

    JS搜狐面试题分析

    这篇文章主要介绍了JS搜狐面试题,涉及javascript数组、字符串及面向对象程序设计相关技巧,需要的朋友可以参考下
    2016-12-12
  • javascript中数组与对象的使用方法区别

    javascript中数组与对象的使用方法区别

    数组(array)是按次序排列的一组值。JS其实没有真正的数组,只是用对象模拟数组。本质上,数组属于一种特殊的对象。typeof运算符会返回数组的类型是object。在javascript中,数组又可以认为是索引数组,即可以用整数来进行索引。数组和对象在这种情况下非常接近。
    2022-12-12
  • JS常用正则表达式总结【经典】

    JS常用正则表达式总结【经典】

    这篇文章主要介绍了JS常用正则表达式,总结分析了常见的数字、字符、邮箱、身份证、电话等的正则验证技巧,需要的朋友可以参考下
    2017-05-05
  • JS中国标准时间转化为年月日时分秒'yyyy-MM-dd hh:mm:ss'的示例详解

    JS中国标准时间转化为年月日时分秒'yyyy-MM-dd hh:mm:ss'的示例详解

    这篇文章主要介绍了JS中国标准时间转化为年月日时分秒‘yyyy-MM-dd hh:mm:ss‘的相关知识,通过示例代码介绍了,Js各种时间转换问题(YYYY-MM-DD 时间戳 中国标准时间),需要的朋友可以参考下
    2024-02-02
  • 老生常谈JavaScript 函数表达式

    老生常谈JavaScript 函数表达式

    下面小编就为大家带来一篇老生常谈JavaScript 函数表达式。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • 鼠标悬停小图标显示大图标

    鼠标悬停小图标显示大图标

    这篇文章主要介绍了鼠标悬停小图标显示大图标的相关资料,需要的朋友可以参考下
    2016-01-01
  • js 操作select与option(示例讲解)

    js 操作select与option(示例讲解)

    本篇文章主要是对js 操作select与option的示例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2013-12-12
  • JS实现星星海特效

    JS实现星星海特效

    这篇文章主要为大家详细介绍了JS实现星星海特效特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12

最新评论