专为微信设计的 UI 库 WeUI

专为微信设计的 UI 库 WeUI

MIT
JavaScript HTML/CSS
跨平台
腾讯
2015-10-13
叶秀兰

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

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

使用

方法一:

使用bower进行安装

bower install --save weui

方法二:

使用npm进行安装

npm install --save weui

开发

git clone https://github.com/weui/weui.git
cd weui
npm install -g gulp
npm install
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:

<a href="javascript:;" class="weui_btn weui_btn_primary">按钮</a>
<a href="javascript:;" class="weui_btn weui_btn_disabled weui_btn_primary">按钮</a>
<a href="javascript:;" class="weui_btn weui_btn_warn">确认</a>
<a href="javascript:;" class="weui_btn weui_btn_disabled weui_btn_warn">确认</a>
<a href="javascript:;" class="weui_btn weui_btn_default">按钮</a>
<a href="javascript:;" class="weui_btn weui_btn_disabled weui_btn_default">按钮</a>
<div class="button_sp_area">
    <a href="javascript:;" class="weui_btn weui_btn_plain_default">按钮</a>
    <a href="javascript:;" class="weui_btn weui_btn_plain_primary">按钮</a>

    <a href="javascript:;" class="weui_btn weui_btn_mini weui_btn_primary">按钮</a>
    <a href="javascript:;" class="weui_btn weui_btn_mini weui_btn_default">按钮</a>
</div>

Cell

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

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

带说明的列表项

<div class="weui_cells_title">带说明的列表项</div>
<div class="weui_cells">
    <div class="weui_cell">
        <div class="weui_cell_bd weui_cell_primary">
            <p>标题文字</p>
        </div>
        <div class="weui_cell_ft">
            说明文字
        </div>
    </div>
</div>

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

<div class="weui_cells_title">带图标、说明、跳转的列表项</div>
<div class="weui_cells weui_cells_access">

    <a class="weui_cell" href="javascript:;">
        <div class="weui_cell_hd">
            <img src="" alt="icon" style="width:20px;margin-right:5px;display:block">
        </div>
        <div class="weui_cell_bd weui_cell_primary">
            <p>cell standard</p>
        </div>
        <div class="weui_cell_ft">
            说明文字
        </div>
    </a>
    <a class="weui_cell" href="javascript:;">
        <div class="weui_cell_hd">
            <img src="" alt="icon" style="width:20px;margin-right:5px;display:block">
        </div>
        <div class="weui_cell_bd weui_cell_primary">
            <p>cell standard</p>
        </div>
        <div class="weui_cell_ft">
            说明文字
        </div>
    </a>
</div>

Dialog

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

<div class="weui_dialog_confirm">
    <div class="weui_mask"></div>
    <div class="weui_dialog">
        <div class="weui_dialog_hd"><strong class="weui_dialog_title">弹窗标题</strong></div>
        <div class="weui_dialog_bd">自定义弹窗内容<br>...</div>
        <div class="weui_dialog_ft">
            <a href="javascript:;" class="weui_btn_dialog default">取消</a>
            <a href="javascript:;" class="weui_btn_dialog primary">确定</a>
        </div>
    </div>
</div>

<div class="weui_dialog_alert">
    <div class="weui_mask"></div>
    <div class="weui_dialog">
        <div class="weui_dialog_hd"><strong class="weui_dialog_title">弹窗标题</strong></div>
        <div class="weui_dialog_bd">弹窗内容,告知当前页面信息等</div>
        <div class="weui_dialog_ft">
            <a href="javascript:;" class="weui_btn_dialog primary">确定</a>
        </div>
    </div>
</div>

Toast

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

<div id="toast" style="display: none;">
    <div class="weui_mask_transparent"></div>
    <div class="weui_toast">
        <i class="weui_icon_toast"></i>
        <p class="weui_toast_content">已完成</p>
    </div>
</div>

<div id="loadingToast" class="weui_loading_toast" style="display:none;">
    <div class="weui_mask_transparent"></div>
    <div class="weui_toast">
        <div class="weui_loading">            <!-- :) -->
            <div class="weui_loading_leaf weui_loading_leaf_0"></div>
            <div class="weui_loading_leaf weui_loading_leaf_1"></div>
            <div class="weui_loading_leaf weui_loading_leaf_2"></div>
            <div class="weui_loading_leaf weui_loading_leaf_3"></div>
            <div class="weui_loading_leaf weui_loading_leaf_4"></div>
            <div class="weui_loading_leaf weui_loading_leaf_5"></div>
            <div class="weui_loading_leaf weui_loading_leaf_6"></div>
            <div class="weui_loading_leaf weui_loading_leaf_7"></div>
            <div class="weui_loading_leaf weui_loading_leaf_8"></div>
            <div class="weui_loading_leaf weui_loading_leaf_9"></div>
            <div class="weui_loading_leaf weui_loading_leaf_10"></div>
            <div class="weui_loading_leaf weui_loading_leaf_11"></div>
        </div>
        <p class="weui_toast_content">数据加载中</p>
    </div>
</div>

Msg Page

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

<div class="weui_msg">
    <div class="weui_icon_area"><i class="weui_icon_success weui_icon_msg"></i></div>
    <div class="weui_text_area">
        <h2 class="weui_msg_title">操作成功</h2>
        <p class="weui_msg_desc">内容详情,可根据实际需要安排</p>
    </div>
    <div class="weui_opr_area">
        <p class="weui_btn_area">
            <a href="javascript:;" class="weui_btn weui_btn_primary">确定</a>
            <a href="javascript:;" class="weui_btn weui_btn_default">取消</a>
        </p>
    </div>
    <div class="weui_extra_area">
        <a href="">查看详情</a>
    </div>
</div>

Article

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

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

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

Icon

<i class="weui_icon_msg weui_icon_success"></i>
<i class="weui_icon_msg weui_icon_info"></i>
<i class="weui_icon_msg weui_icon_warn"></i>
<i class="weui_icon_msg weui_icon_waiting"></i>
<i class="weui_icon_safe weui_icon_safe_success"></i>
<i class="weui_icon_safe weui_icon_safe_warn"></i>
<div class="icon_sp_area">
    <i class="weui_icon_success"></i>
    <i class="weui_icon_success_circle"></i>
    <i class="weui_icon_success_no_circle"></i>
    <i class="weui_icon_info"></i>
    <i class="weui_icon_waiting"></i>
    <i class="weui_icon_waiting_circle"></i>
    <i class="weui_icon_circle"></i>
    <i class="weui_icon_warn"></i>
    <i class="weui_icon_download"></i>
</div>
加载中

评论(72)

f
freedomlcc
非常不错,很喜欢,很快就能上手,支持支持!!!
研究僧
研究僧
66666666666666666
简约_阿廖沙
简约_阿廖沙
ios系统访问有多个checkbox会有问题,有人解决了吗?使用jquerymobileUI也是
非得弄个名字
为啥不用小程序开发
明月依稀
明月依稀
这东西是东抄抄,西改改弄出来的。据说作者原就职于阿里,搬了一个suimobile出来,离职后又弄了light7出来,现在就是weui了,前面那几个已经不再维护,一堆bug。其实都是大量参考framework7做的,前面那几个还不如framework7,weUi不知道怎么样。。
2
201314wlw
感觉跟css挺像的
超级菜的码农
超级菜的码农
收藏收藏 好宝贝
朝廷
朝廷
哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈好
i
izhuanyer
阿里云官方优惠卷使用教程
无法触及
无法触及
感觉不错!以后开发微信可以用到!

Weui 1.0 发布,微信 Web 应用设计 UI 库

Weui 1.0 发布了。 WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信内网页和微信小程序量身设计,令用户的使用感知更加统一。 主要更新内容: 【增强】 采用BEM命...

2016/09/24 08:03

WeUI 0.4.3 发布,微信 Web 应用设计 UI 库

WeUI 0.4.3 发布了,更新如下: v0.4.3 (2016-07-05) [修复] 图片上传组件无法选中图片的缺陷 [修复] 九宫格组件少于3个时出现多余线段的缺陷 [修复] 解决某些组件的z-index冲突,标准化z-i...

2016/07/08 17:20

WeUI 0.4.2 发布,微信 Web 应用设计 UI 库

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

2016/05/07 17:14

jQuery WeUI V0.4.2 发布

jQuery WeUI V0.4.2 发布了! jQuery WeUI 中使用的是官方WeUI的CSS代码,并提供了jQuery/Zepto版本的JS API实现。因为直接使用了官方的CSS,所以你不用担心跟官方版本的冲突。实际上 jQuery...

2016/03/16 11:10

没有更多内容

加载失败,请刷新页面

没有更多内容

2
回答
如何在同一个页面同时使用jquery和weui

有一个网页同时有网页访问和微信端访问,要使在网页访问时使用jquery库,在微信端访问时使用weui库,怎么可以做到

2017/05/02 20:33
3
回答
weui 可以修改吗?

样式库 可以修改吗?比如说 我想让button的背景色是红色,我自己试了下 感觉没有效果 当然在标签上直接加style可以。这样太麻烦不是?

2016/12/12 15:48
3
回答
请教下关于微信浏览器页面返回浏览位置实现方式,谢谢!

各位好: 现在就想实现在微信浏览器里面使用返回时,页面不刷新,并自动返回到之前浏览位置的功能。 请帮忙指导下这个功能是咋实现的, 多谢!

2016/11/14 21:46
2
回答
请教一个关于页面跳转传值的问题

各位好: 因为应用的功能需要, 现在想基于weui的基础上实现这样一个页面。 在提交页面里面加一个按钮,点按钮之后打开另外的一个选择页面,在页面中选择好之...

2016/11/05 16:29
4
回答
请教下关于图片上传处理问题,谢谢!
封面 的回答 2016/11/04 09:09
最佳答案
jquery weui就是一个前端的样式库而已,就是正常的图片上传吧,这有什么难度吗?
2
回答
weui\suimobile\mui等等

做移动端app哪个ui框架好?不用另外设计页面,只要用组件就行,在微信和微信之外都可以用。 http://www.oschina.net/p/weui h...

2016/08/26 09:42
12
回答
命名方式下划线看起来不爽

css标准命名不都是中画线的吗,下划线看起来很难受!好吧,我承认我是处女座的……

2015/10/23 14:05
1
回答
用jqueryWeui写的jsp页面在手机微信上dialog和toast无法使用

我在jsp页面上写一个按钮,点击按钮弹出对话框。代码如下: <a href="javascript:buy();" class="weui_btn weu...

2016/05/20 21:49
2
回答
手机微信jqueryweui中使用swiper轮询图片,更换图片后还是显示原来的图片

<div class="swiper-container" style="height: 200px;"> <div class="swipe...

2016/05/20 15:42
4
回答
使用weui的jsp页面用手机微信打开不刷新页面内容
梦之海澜 的回答 2016/05/19 09:29
最佳答案
Java: response.setHeader("Cache-Control","no-cache"); response.setDateHeader("Expires", 0); response.setHeader("Pragma","no-cache"); HTML: <meta HT...

没有更多内容

加载失败,请刷新页面

可输入可下拉的输入选择框

PC <div class="row form-horizontal"> <div class="col-md-6"> <div class="form-group"> <label class="col-sm-2 control-label"><span class="mark-btn">*</span>落款部门</label> <div c...

2017/10/30 16:38
11
0
小程序自定义底部tab

场景 1.tabBar是在内页而非首页,这时就不得不自定义一个tabBar了 2.自定义风格 3.子页数量超过5个,得到更多了tab 4.改变点击tab默认事件,比如出登录界面,或者弹出上拉子菜单等 步骤 1.照...

08/07 16:28
718
0
前端开发精品网站

阿里巴巴矢量图 http://www.iconfont.cn 阿里妈妈MUX倾力打造的矢量图标管理、交流平台。 设计师将图标上传到Iconfont平台,用户可以自定义下载多种格式的icon,平台也可将图标转换为字体,便...

09/06 11:26
13
0
微信小程序Axure元件库

由于最近在设计开发微信小程序应用,看到微信官方有一个WEUI的设计规范,由于根据这套设计规范,制作了一整套WEUI的axure元件库,方便产品经理快速设计小程序的产品原型。此元件库内包括微信...

09/13 17:43
539
0
小程序自定义底部tab

场景 1.tabBar是在内页而非首页,这时就不得不自定义一个tabBar了 2.自定义风格 3.子页数量超过5个,得到更多了tab 4.改变点击tab默认事件,比如出登录界面,或者弹出上拉子菜单等 步骤 1.照...

08/16 17:54
18
0
UI框架整理

1.PC端 easyui ligerui miniui(收费) dwz zui webx hui hui.admin h+ extjs jqwidgets fineui(收费) F.js JQuery UI ace b-jui Dojo Amazeui layui webix Semantic UI kendo ui superui 拼图...

2017/03/24 16:42
116
0
前端框架、前端工具记录(更新中....)

一、工具 前端工具库:http://www.w3cfuns.com/tools.php DCloud - HBuilder :http://www.dcloud.io Webstorm:http://www.jetbrains.com/webstorm/ easyicon图标:http://www.easyicon.net...

2016/03/05 15:51
805
2
weui 腾讯官方样式库

https://github.com/Tencent/weui 小程序和公众号开发可以使用。

10/27 23:36
24
0
微信UI(weui)使用手册最新版.pdf 免费下载

下载地址: 微信UI(weui)使用手册最新版.pdf

10/12 10:49
0
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部