WeUI 为微信 Web 服务量身设计

概述

WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一。包含buttoncelldialog、 progresstoastarticleicon等各式元素。

使用

方法一:

使用bower进行安装

  1. bower install --save weui

方法二:

使用npm进行安装

  1. npm install --save weui

开发

  1. git clone https://github.com/weui/weui.git
  2. cd weui
  3. npm install -g gulp
  4. npm install
  5. gulp -ws

运行gulp -ws命令,会监听src目录下所有文件的变更,并且默认会在8080端口启动服务器,然后在浏览器打开 http://localhost:8080/example

手机预览

请用微信扫码

http://weui.github.io/weui/

Button

按钮可以使用a或者button标签。wap上要触发按钮的active态,必须触发ontouchstart事件,可以在body上加上ontouchstart=""全局触发。

按钮常见的操作场景:确定、取消、警示,分别对应class:weui_btn_primaryweui_btn_defaultweui_btn_warn,每种场景都有自己的置灰态weui_btn_disabled,除此外还有一种镂空按钮weui_btn_plain_xxx,客户端webview里的按钮尺寸有两类,默认宽度100%,小型按钮宽度自适应,两边边框与文本间距0.75em:

  1. <a href="javascript:;" class="weui_btn weui_btn_primary">按钮</a>
  2. <a href="javascript:;" class="weui_btn weui_btn_disabled weui_btn_primary">按钮</a>
  3. <a href="javascript:;" class="weui_btn weui_btn_warn">确认</a>
  4. <a href="javascript:;" class="weui_btn weui_btn_disabled weui_btn_warn">确认</a>
  5. <a href="javascript:;" class="weui_btn weui_btn_default">按钮</a>
  6. <a href="javascript:;" class="weui_btn weui_btn_disabled weui_btn_default">按钮</a>
  7. <div class="button_sp_area">
  8. <a href="javascript:;" class="weui_btn weui_btn_plain_default">按钮</a>
  9. <a href="javascript:;" class="weui_btn weui_btn_plain_primary">按钮</a>
  10.  
  11. <a href="javascript:;" class="weui_btn weui_btn_mini weui_btn_primary">按钮</a>
  12. <a href="javascript:;" class="weui_btn weui_btn_mini weui_btn_default">按钮</a>
  13. </div>

Cell

Cell,列表视图,用于将信息以列表的结构显示在页面上,是wap上最常用的内容结构。Cell由多个section组成,每个section包括section headerweui_cells_title以及cellsweui_cells

cell由thumbnailweui_cell_hd、bodyweui_cell_bd、accessoryweui_cell_ft三部分组成,cell采用自适应布局,在需要自适应的部分加上classweui_cell_primary即可:

带说明的列表项

  1. <div class="weui_cells_title">带说明的列表项</div>
  2. <div class="weui_cells">
  3. <div class="weui_cell">
  4. <div class="weui_cell_bd weui_cell_primary">
  5. <p>标题文字</p>
  6. </div>
  7. <div class="weui_cell_ft">
  8. 说明文字
  9. </div>
  10. </div>
  11. </div>

Cell可根据需要进行各种自定义扩展,包括辅助说明、跳转、单选、复选等。下面以带图标、说明、跳转的列表项,其他情况可以直接参考example下的代码:

  1. <div class="weui_cells_title">带图标、说明、跳转的列表项</div>
  2. <div class="weui_cells weui_cells_access">
  3.  
  4. <a class="weui_cell" href="javascript:;">
  5. <div class="weui_cell_hd">
  6. <img src="" alt="icon" style="width:20px;margin-right:5px;display:block">
  7. </div>
  8. <div class="weui_cell_bd weui_cell_primary">
  9. <p>cell standard</p>
  10. </div>
  11. <div class="weui_cell_ft">
  12. 说明文字
  13. </div>
  14. </a>
  15. <a class="weui_cell" href="javascript:;">
  16. <div class="weui_cell_hd">
  17. <img src="" alt="icon" style="width:20px;margin-right:5px;display:block">
  18. </div>
  19. <div class="weui_cell_bd weui_cell_primary">
  20. <p>cell standard</p>
  21. </div>
  22. <div class="weui_cell_ft">
  23. 说明文字
  24. </div>
  25. </a>
  26. </div>

Dialog

若系统的alert窗体无法满足网页的临时视图内容需求,则可以自定义实现与alert形式相似的dialog,并且在dialog中可以自定义地使用各种控件,来满足需求。

  1. <div class="weui_dialog_confirm">
  2. <div class="weui_mask"></div>
  3. <div class="weui_dialog">
  4. <div class="weui_dialog_hd"><strong class="weui_dialog_title">弹窗标题</strong></div>
  5. <div class="weui_dialog_bd">自定义弹窗内容<br>...</div>
  6. <div class="weui_dialog_ft">
  7. <a href="javascript:;" class="weui_btn_dialog default">取消</a>
  8. <a href="javascript:;" class="weui_btn_dialog primary">确定</a>
  9. </div>
  10. </div>
  11. </div>

  1. <div class="weui_dialog_alert">
  2. <div class="weui_mask"></div>
  3. <div class="weui_dialog">
  4. <div class="weui_dialog_hd"><strong class="weui_dialog_title">弹窗标题</strong></div>
  5. <div class="weui_dialog_bd">弹窗内容,告知当前页面信息等</div>
  6. <div class="weui_dialog_ft">
  7. <a href="javascript:;" class="weui_btn_dialog primary">确定</a>
  8. </div>
  9. </div>
  10. </div>

Progress

progress用于上传、下载等耗时并且需要显示进度的场景,用户可以随时中断该操作。

  1. <div class="weui_progress">
  2. <div class="weui_progress_bar">
  3. <div class="weui_progress_inner_bar" style="width: 50%;"></div>
  4. </div>
  5. <a href="javascript:;" class="weui_progress_cancel">
  6. <i class="weui_icon_cancel"></i>
  7. </a>
  8. </div>

Toast

toast用于临时显示某些信息,并且会在数秒后自动消失。这些信息通常是轻量级操作的成功、失败或等待状态信息。

  1. <div id="toast" style="display: none;">
  2. <div class="weui_mask_transparent"></div>
  3. <div class="weui_toast">
  4. <i class="weui_icon_toast"></i>
  5. <p class="weui_toast_content">已完成</p>
  6. </div>
  7. </div>

  1. <div id="loadingToast" class="weui_loading_toast" style="display:none;">
  2. <div class="weui_mask_transparent"></div>
  3. <div class="weui_toast">
  4. <div class="weui_loading">
  5. <!-- :) -->
  6. <div class="weui_loading_leaf weui_loading_leaf_0"></div>
  7. <div class="weui_loading_leaf weui_loading_leaf_1"></div>
  8. <div class="weui_loading_leaf weui_loading_leaf_2"></div>
  9. <div class="weui_loading_leaf weui_loading_leaf_3"></div>
  10. <div class="weui_loading_leaf weui_loading_leaf_4"></div>
  11. <div class="weui_loading_leaf weui_loading_leaf_5"></div>
  12. <div class="weui_loading_leaf weui_loading_leaf_6"></div>
  13. <div class="weui_loading_leaf weui_loading_leaf_7"></div>
  14. <div class="weui_loading_leaf weui_loading_leaf_8"></div>
  15. <div class="weui_loading_leaf weui_loading_leaf_9"></div>
  16. <div class="weui_loading_leaf weui_loading_leaf_10"></div>
  17. <div class="weui_loading_leaf weui_loading_leaf_11"></div>
  18. </div>
  19. <p class="weui_toast_content">数据加载中</p>
  20. </div>
  21. </div>

Msg Page

结果页通常来说可以认为进行一系列操作步骤后,作为流程结束的总结性页面。结果页的作用主要是告知用户操作处理结果以及必要的相关细节(可用于确认之前的操作是否有误)等信息;若该流程用于开启或关闭某些重要功能,可在结果页增加与该功能相关的描述性内容;除此之外,结果页也可以承载一些附加价值操作,例如提供抽奖、关注公众号等功能入口。

  1. <div class="weui_msg">
  2. <div class="weui_icon_area"><i class="weui_icon_success weui_icon_msg"></i></div>
  3. <div class="weui_text_area">
  4. <h2 class="weui_msg_title">操作成功</h2>
  5. <p class="weui_msg_desc">内容详情,可根据实际需要安排</p>
  6. </div>
  7. <div class="weui_opr_area">
  8. <p class="weui_btn_area">
  9. <a href="javascript:;" class="weui_btn weui_btn_primary">确定</a>
  10. <a href="javascript:;" class="weui_btn weui_btn_default">取消</a>
  11. </p>
  12. </div>
  13. <div class="weui_extra_area">
  14. <a href="">查看详情</a>
  15. </div>
  16. </div>

Article

文字视图显示大段文字,这些文字通常是页面上的主体内容。Article支持分段、多层标题、引用、内嵌图片、有/无序列表等富文本样式,并可响应用户的选择操作。

在微信客户端webview中使用Article,必须保证文字有足够的可读性和可辨识性、使用规范字体、保证足够的段间距、段首无缩进。

  1. <article class="weui_article">
  2. <h1>大标题</h1>
  3. <section>
  4. <h2 class="title">章标题</h2>
  5. <section>
  6. <h3>1.1 节标题</h3>
  7. <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
  8. tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  9. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  10. consequat. Duis aute</p>
  11. </section>
  12. <section>
  13. <h3>1.2 节标题</h3>
  14. <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
  15. tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  16. cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  17. proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
  18. </section>
  19. </section>
  20. </article>

Icon

  1. <i class="weui_icon_msg weui_icon_success"></i>
  2. <i class="weui_icon_msg weui_icon_info"></i>
  3. <i class="weui_icon_msg weui_icon_warn"></i>
  4. <i class="weui_icon_msg weui_icon_waiting"></i>
  5. <i class="weui_icon_safe weui_icon_safe_success"></i>
  6. <i class="weui_icon_safe weui_icon_safe_warn"></i>
  7. <div class="icon_sp_area">
  8. <i class="weui_icon_success"></i>
  9. <i class="weui_icon_success_circle"></i>
  10. <i class="weui_icon_success_no_circle"></i>
  11. <i class="weui_icon_info"></i>
  12. <i class="weui_icon_waiting"></i>
  13. <i class="weui_icon_waiting_circle"></i>
  14. <i class="weui_icon_circle"></i>
  15. <i class="weui_icon_warn"></i>
  16. <i class="weui_icon_download"></i>
  17. <i class="weui_icon_info_circle"></i>
  18. <i class="weui_icon_cancel"></i>
  19. </div>

微信官方UI库—WeUI的更多相关文章

  1. WeUI—微信官方UI库

    WeUI 为微信 Web 服务量身设计 概述 WeUI是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一.包含button.cell ...

  2. [教程]微信官方开源UI库-WeUI使用方法【申明:来源于网络】

    [教程]微信官方开源UI库-WeUI使用方法 [ 教程]微信官方开源UI库-WeUI使用方法 地址:http://www.weui.org.cn/?/article/1 微信公众号开发-WeUI使用说 ...

  3. 微信官方开源UI库-WeUI

    概述 WeUI是一套同微信原生视觉体验一致的基础样式库,为微信Web开发量身设计,可以令用户的使用感知更加统一.包含button.cell.dialog.toast.article.icon等各式元素 ...

  4. 微信、小程序开发UI库--weui

    一.weui可以开发微信内网页.微信小程序,二者使用的UI库不一样 1. 微信内网页样式文件为 .css文件  链接地址:https://weui.io/         weui-js库:  weu ...

  5. WeUI logo专为微信设计的 UI 库 WeUI

    http://www.oschina.net/p/weui?fromerr=FnwHyWAb http://weui.github.io/weui/

  6. ZanUI-WeApp -- 一个颜值高、好用、易扩展的微信小程序 UI 库

    ZanUI-WeApp -- 一个颜值高.好用.易扩展的微信小程序 UI 库:https://cnodejs.org/topic/589d625a5c8036f7019e7a4a 微信小程序之官方UI ...

  7. WeUI 是由微信官方设计团队专为微信移动 Web 应用设计的 UI 库

    WeUI 是由微信官方设计团队专为微信移动 Web 应用设计的 UI 库. WeUI 是一套同微信原生视觉体验一致的基础样式库,为微信 Web 开发量身设计,可以令用户的使用感知更加统一.包含butt ...

  8. WeUI首页、文档和下载 - 专为微信设计的 UI 库 - 开源中国社区

    Download Bitnami Review Board Stack click here WeUI首页.文档和下载 - 专为微信设计的 UI 库 - 开源中国社区

  9. 移动端前端UI库—Frozen UI、WeUI、SUI Mobile

    [MUI]http://www.dcloud.io/ [Clouda]http://clouda.baidu.com/blend2是百度历时两年共同研发的开源App技术框架,基于Node.js,简单易 ...

随机推荐

  1. 卸载ubuntu自带openJDK,更改成自己的JDK版本

    你已经成功把jdk1.6.0_03 安装到 /usr/java,并且配置好了系统环境变量 执行 # java -version 时就是 显示jdk1.4.3,是因为你的linux系统有默认的jdk;执 ...

  2. 现在企业流行的java框架技术

    我将简短分析被用于支持这些框架的企业开发环境或工具箱,例如Borland JBuilder,Eclipse以及BEA Workbench.请记住,市场上有许多有关这些开发框架的图书;然而,在任何一篇文 ...

  3. 《31天成为IT服务达人》--做事篇(第四章)之如何找目标

     前面介绍了什么是IT服务.以下几章将介绍IT服务该怎么做.在聊怎么做之前.想起几句流行的告白和准备入行IT服务事业的朋友共勉. 当你的才华 还撑不起你的野心时 就应该静下心来 学习 --- 当你 ...

  4. XMU C语言程序设计实践(1)

    题目: 任务1:英雄出世 炎热的夏天午后,小明正在百无聊赖地写c语言程序.忽然,电脑屏幕一阵抖动,浮现下面18×18个看似杂乱无章的数字: 32,  32,  32,  32,  32,  32,  ...

  5. ubuntu切换中英文通用方法,ubuntu中文语言

    1:点击桌面右上角的齿轮,选择“system settings”进入系统设置界面

  6. 【Selenium】idea导入eclisp项目的问题

    ①导入:file→new→Project from exiting 选择ecliesp 然后next就可以 ②添加依赖:每个包都要加,引用其他包的类,也要添加依赖 setting选择junit4

  7. 主机与虚拟机互ping

    1.设置虚拟机网络连接方式(如下图): 2.设置主机和虚拟机的ip为同一个网段,如主机ip:192.168.28.1,虚拟机ip:192.168.28.128 3.如果相互还是ping不通,就检查一下 ...

  8. saltstack源码-启动1

    决定看salt的源码了.干脆就从最基本的看起来,先看它的启动过程开始第一步用/etc/init.d/salt-master start 启动找到那个文件,发现有3种启动方式,suse,debian,c ...

  9. openStack 镜像制作,镜像裁剪一般步骤

    镜像制作一般裁剪步骤 1, linux系统安装CentOs/RHEL Desktop桌面系统,分区划分但分区/挂载点.设置Selinux=disabled关闭iptables安装cloud-init[ ...

  10. [笔记]如何将已存在的JAVA添加到当前ECLIPSE JAVA工程中

    找到路径.ctrl C .ctrl V F5就行了