WeUI是一套基础样式库,同微信原生视觉体验一致,由微信官方设计团队为微信内网页和微信小程序量身设计的。
我们来看看这个基础库样式到底长什么样。

这些密密麻麻的就是压缩后的样式库。密密麻麻地看起来简直要急死密集恐惧症啊。不要急,您请往下看。
仔细看我们能看到,这个样式库为很多类写了样式。也就是说,我们只要在html页面中使用这些样式,就能构建一个页面了。【只要写类名,省去了为很多标签定义样式,是不是省事多了呢?】
对WeUI的介绍就到这了,下面都是满满的干货啦。

开始写页面前的准备

要想有这个样式库,当然要先下载WeUI的样式库啦,我提供了两个下载的地址。

接下来就为我们的页面引入这个基础样式库。
我把这个基础样式库放在本地了,就这么引入。

<link rel="stylesheet" href="./css/weui.min.css">

为了更好的说明这个基础样式库的使用,接下来我将介绍两个例子。单页应用页面和弹出框。

单页应用页面

我们致敬vue,模仿这个页面。
纵观整个页面,可以分为以下几个模块。

  • 最顶上放置logo

  • 中间有两个cells 也就是单元格,来显示数据

  • 最底部有一个tabbar导航条

引入代码:

<div style="height:100%">
<div class="center">
</div>
<div class="weui-cells">
</div>
<div class="weui-cells">
</div>
<p class="vue-version">current vue version 2.5.2</p>
<div class="weui-tabbar">
</div>
</div>

顶部的图片插入比较简单,直接引入图片就行。我们说说中间cells中内容的添加。
我们看一个单元格,很典型的左中右格式,分为三个结构层次,

  • 左边是一张图片,WeUI样式库为我们定义了类名,也就是单元格的头部:weui-cell__hd

  • 中间是一段文字,也就是这个单元格的身体:weui-cell__bd

  • 最右边是一个小箭头,也就是单元格的尾部:weui-cell__ft

引入代码:

<div class="weui-cells">
<!-- _access能显示一个箭头 -->
<a href="#" class="weui-cell weui-cell_access">
<div class="weui-cell__hd">
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAAuCAMAAABgZ9sFAAAAVFBMVEXx8fHMzMzr6+vn5+fv7+/t7e3d3d2+vr7W1tbHx8eysrKdnZ3p6enk5OTR0dG7u7u3t7ejo6PY2Njh4eHf39/T09PExMSvr6+goKCqqqqnp6e4uLgcLY/OAAAAnklEQVRIx+3RSRLDIAxE0QYhAbGZPNu5/z0zrXHiqiz5W72FqhqtVuuXAl3iOV7iPV/iSsAqZa9BS7YOmMXnNNX4TWGxRMn3R6SxRNgy0bzXOW8EBO8SAClsPdB3psqlvG+Lw7ONXg/pTld52BjgSSkA3PV2OOemjIDcZQWgVvONw60q7sIpR38EnHPSMDQ4MjDjLPozhAkGrVbr/z0ANjAF4AcbXmYAAAAASUVORK5CYII=" alt="">
</div>
<div class="weui-cell__bd">
<p>Live Demo</p>
</div>
<div class="weui-cell__ft"></div>
</a>
</div>

这样,我们就写完了一个单元格。
第二个单元格有两个小格怎么办呢?
不要紧,weui-cell是单元格中的一个小格子,有多少个小格子就嵌套在一个weui-cells中就可以了,每一格weui-cell还是按照上面的左中右方式进行命名:

<div class="weui-cells">
<a href="" class="weui-cell weui-cell_access">
<span class="weui-cell__hd"></span>
<span class="weui-cell__bd"></span>
<span class="weui-cell__ft">
<!-- weui-badge是显示在箭头前面的红色提示小框 -->
<div class="weui-badge"></div>
</span>
</a>
<a href="" class="weui-cell weui-cell_access">
<span class="weui-cell__hd"></span>
<span class="weui-cell__bd"></span>
<span class="weui-cell__ft"></span>
</a>
</div>

接下来是最底部的tabbar。
最尾部的导航条类名为weui-tabbar,里面有三项内容,也就是有三个weui-tabbar__item。

<div class="weui-tabbar">
<a href="" class="weui-tabbar__item">
</a>
<a href="" class="weui-tabbar__item">
</a>
<a href="" class="weui-tabbar__item">
</a>
</div>

为每一个weui-tabbar__item添加内容吧:

<div class="weui-tabbar">
<a href="" class="weui-tabbar__item">
<img src="./images/icon_tabbar.png" alt="" class="weui-tabbar__icon">
<p class="weui-tabbar__label">Home</p>
</a>
<a href="" class="weui-tabbar__item">
<span style="position:relative;display:inline-block">
<img src="./images/icon_tabbar.png" alt="" class="weui-tabbar__icon">
<!-- weui-badge表示一个红色的展示区 -->
<span class="weui-badge" style="position:absolute;top:-6;right:-11px">8</span>
</span>
<p class="weui-tabbar__label">Demos</p>
</a>
<a href="" class="weui-tabbar__item">
<span style="position:relative;display:inline-block">
<img src="./images/icon_tabbar.png" alt="" class="weui-tabbar__icon">
<!-- weui-badge_dot小圆点,给一个相对于span的定位,放在右上角 -->
<span class="weui-badge weui-badge_dot" style="position:absolute;top:0;right:-6px"></span>
</span>
<p class="weui-tabbar__label">Donate</p>
</a>
</div>

我放在GitHub上的项目地址:https://github.com/TeanLee/qs...
这就完成了第一个单页页面的编写。

接下来我们说说一个弹出框。

页面弹出框

放上我们要写的页面成品图:

这就是我们平常很常见的弹出框了。这里是点击了第一个按钮就弹出这个弹框,点击取消,弹框消失,当然你也可以添加别的事件,点击取消和保存都会让弹框消失并且执行相应的步骤。

首先,我们为dialog弹出框制作一个“家”,也就是dialog放置的页面:
weui-btn 是weui的基本组件是一个按钮

<div class="page dialog">
<div class="page__hd">
<h1 class="page__title">Dialog</h1>
<p class="page__desc">对话框</p>
</div>
<div class="page__bd page__bd__spacing">
<!-- 设置三个按钮,但是我只为第一个按钮绑定了弹框弹出的事件 -->
<a href="#" class="weui-btn weui-btn_default" id="showIOSDialog1">IOS Dialog样式 default</a>
<a href="#" class="weui-btn weui-btn_primary">IOS Dialog样式 primary</a>
<a href="#" class="weui-btn weui-btn_warn">IOS Dialog样式 warn</a>
</div>
</div>

接下来,我们的dialog就要登场了。直接把dialog的div放在放置按钮div的后面。

<div class="dialogs">
<div id="iosDialog1" class="js_dialog" style="display: none">
<!-- weui-mask 遮罩层 -->
<div class="weui-mask"></div>
<div class="weui-dialog">
<div class="weui-dialog__hd">
<div class="weui-dialog__title">弹窗标题</div>
</div>
<div class="weui-dialog__bd">
<!-- 任何东西 说明文字, 表单 -->
弹窗内容,告知当前状态、信息和解决方法,描述文字尽量控制在三行内
</div>
<!-- 弹窗底部的两个小按钮,有两个选项就放置两个 weui-dialog__btn -->
<div class="weui-dialog__ft">
<a href="#" class="weui-dialog__btn weui-dialog__btn_default" id="dialogCancle">取消</a>
<a href="#" class="weui-dialog__btn weui-dialog__btn_primary">保存</a>
</div>
</div>
</div>

这里的遮罩层是为整个页面蒙上一层灰色的背景,把用户的吸引力引到弹框上。
弹框的内容还是分为三个层次:

  • weui-dialog__hd:弹框的头部写标题;

  • weui-dialog__bd:弹框的身体写具体内容;

  • weui-dialog__ft:弹框的尾部放置按钮;

接下来,就是给第一个按钮添加绑定事件了,点击第一个按钮就跳出来弹框。

<script>
document.getElementById('showIOSDialog1').click(function () {
$('#iosDialog1').show();
});
document.getElementById('dialogCancle').click(function () {
$('#iosDialog1').show();
});
</script>

我放在GitHub上的弹框具体代码:https://github.com/TeanLee/qs...

当然,weu基础样式库还有很多很多组件可以使用,可以进入https://weui.io/ 查看更多的基础组件。
接下来让我们一起学习更多吧!

WeUI基础样式库——写一个移动端界面的更多相关文章

  1. 用python的time库写一个进度条

    运算符 算数运算 如a=10,b=20 +两个数相加 a+b=30 -两个数相减 a-b=-10 两个数相乘 a****b =200 /两个数相除b/a=2 %取模,并返回余数b%a=0 幂,a*** ...

  2. 用java写一个用户登陆界面

    一.课堂测试源代码及其结果截图 用java的swing写一个用户登录界面,采用网格布局.源代码如下: /** * */package LiuLijia; import java.awt.CardLay ...

  3. QT学习日记篇-03-仿写一个智能家居界面

    课程大纲: <1>让界面漂亮起来,仿写一个智能家居界面 ->第一:给QT工程添加图片 进入下一步: <注意路径和名称一定不能有中文>                   ...

  4. 用H5和js写一个移动端自定义播放器

    前言 由于html5自带的播放器样式不怎么好看,大多数人都是自己写一个来满足业务需求.这一次的需求如下: 1.不要上一曲下一曲 2.有进度条和播放暂停按钮 3.有时间显示 demo实现功能 1.进度条 ...

  5. 怎样写一个PC端使用的操盘手软件(用来买卖股票,查看报表,行情)

    我们想写一个操盘手软件,对于操盘而言,首先是快,然后是资料尽可能丰富,最好能看到行情,报表什么的.只是windows上写软件看似基础,实际上都不怎么好弄,用C++开发确实可以实现所有功能,估计光研发费 ...

  6. Java Web 开发利用Struts2+Spring+mybatis写一个用户登录界面以及简单的数据交互

    框架的东西太复杂也难以讲通,直接上代码: 一.首先得配置环境 和导入必要的jar包 有一些重要的如下: Filter文件夹下的SafetyFilter.java   model文件夹下的 Global ...

  7. 使用Boostrap框架写一个登录\注册界面

    Bootstrap是一个Web前端开发框架,使用它提供的css.js文件可以简单.方便地美化HTML控件.一般情况下,对控件的美化需要我们自己编写css代码,并通过标签选择器.类选择器.ID选择器为指 ...

  8. 利用jmSlip写一个移动端顶部日历选择组件

    可滚动选日期,并限制哪些日期可选和不可选. 主要用来根据后台返回生成一个日期选择器. 具体实现可关注jmslip: https://github.com/jiamao/jmSlip 示例:http:/ ...

  9. 用python requests库写一个人人网相册爬虫

    担心人人网会黄掉,写个爬虫,把我的相册照片都下载下来.代码如下: # -*- coding: utf-8 -*- import requests import json import os def m ...

随机推荐

  1. 20191225--python学习第二天笔记(补)

    1.内容回顾 学习计算机基础 安装解释器 2.语法 print/input 整型 int/字符串 str/布尔类型 boolen 条件语句 and运算符 变量 3.练习 评分规则:用户输入成绩,根据成 ...

  2. VFP中OCX控件注册检测及自动注册

    这是原来从网上搜集.整理后编制用于自己的小程序使用的OCX是否注册及未注册控件的自动注册函数. CheckCtrlFileRegist("ctToolBar.ctToolBarCtrl.4& ...

  3. Params:params 关键字可以指定在参数数目可变处采用参数的方法参数。

    Params:params 关键字可以指定在参数数目可变处采用参数的方法参数. 注意点: 1.一个方法中只能使用一个params来声明不定长参数数组: 2.params参数数组只能放在已定义参数后面 ...

  4. Mysql 在线新建或重做主从

    1. 前言 以前给 Mysql 数据库做主从,都是在主服务器停服的情况下做的.但是最近有一个项目,已经上线几天了,数据库也单服务器跑了几天,才确定要给 Mysql 服务器做一个主从架构,简单的一主一从 ...

  5. Go语言基础之接口(面向对象编程下)

    1 接口 1.1 接口介绍 接口(interface)是Go语言中核心部分,Go语言提供面向接口编程,那么接口是什么? 现实生活中,有许多接口的例子,比如说电子设备上的充电接口,这个充电接口能干什么, ...

  6. DOTNET Core MVC(二)路由初探

    搁置了几天,工作忙的一塌糊涂,今天终于抽空来继续看看MVC的知识.先来看看MVC的路由是如何处理的.以下为替代的路由: app.UseEndpoints(endpoints => { endpo ...

  7. 基于SSM开发自行车在线租赁管理系统源码

    开发环境: Windows操作系统开发工具: Myeclipse+Jdk+Tomcat+MYSQL数据库注意:此项目分管理员与普通用户两种角色运行效果图 源码及原文链接:https://javadao ...

  8. 浏览器中常见的html语义化标签

    html标签默认在浏览器中展示的样式,html标签的用途:语义化(明白每个标签的用途,在什么情况下使用此标签合理);标签语义化好处:1.更容易被搜索引擎收录2.更容易让屏幕阅读器读出网页内容. 网页上 ...

  9. 百度大脑EasyEdge端模型生成部署攻略

    EasyEdge是百度基于Paddle Mobile研发的端计算模型生成平台,能够帮助深度学习开发者将自建模型快速部署到设备端.只需上传模型,最快2分种即可生成端计算模型并获取SDK.本文介绍Easy ...

  10. day 16内置函数总结

    reversed()l = [1,2,3,4,5]l.reverse()print(l) l = [1,2,3,4,5]l2 = reversed(l)reversed:更加节省内存资源print(l ...