编写第一个微信小程序界面

  不忘初心,方得始终;初心易得,始终难守。  

传统的 web 结构

  

小程序文件目录结构

  

小程序页面层级结构

编写第一个小程序

1. 创建小程序目录结构

  

2. 编写代码

welcome.wxml

<!-- wxml 是编写小程序骨架的文件 -->
<!-- <div>一样的效果 -->
<view class='container'>
<image class='user-avatar' src='/images/1.jpg'></image>
<text class='user-name'>Hello , 王佳伟</text>
<view class='moto-container'>
<text class='moto'>开启小程序之旅</text>
</view>
</view>

welcome.wvss

.container{
/* 布局修改 */
display: flex;
/* 纵向排列 */
flex-direction: column;
/* 内容居中 */
align-items: center;
} .user-avatar{
width: 200rpx;
height: 200rpx;
margin-top: 160rpx;
} .user-name{
margin-top: 100rpx;
font-size: 32rpx;
font-weight: bold;
} .moto{
font-size: 22rpx;
font-weight: bold;
line-height: 80rpx;
color: #405f80;
} .moto-container{
margin-top: 200rpx;
border: 1px solid #405f80;
width: 200rpx;
height: 80rpx;
border-radius: 5px;
text-align: center;
} page{
height: 100%;
background-color: #b3d4db;
}

 app.json

{
"pages": [
"pages/welcome/welcome"
],
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#b3d4db",
"navigationBarTitleText": "WeChat",
"navigationBarTextStyle": "black"
}
}

 app.wxss

text{
/* 设置字体 */
font-family: MicroSoft Yahei;
}

  

移动设备的分辨率与 rpx

为什么模拟器下ip6的分辨率为375而设计图一般给750?

  

  pt :逻辑分辨率,和屏幕物理尺寸有关,可以简单的理解为长度和视觉单位。

  px :物理分辨率,与屏幕尺寸无关,简单理解为像素点,因为点不能描述大小,只能描述个数,所有不是长度单位。

  关系:1个 pt 可以有一个 px 构成,也可以有两个,还可以有3个甚至更多组成。

     ip6 下2个 px 构成一个 pt。

  PPI:每一寸包含多少物理像素点。

 因为小程序模拟器给出的ip6的375分辨率是逻辑分辨率,设计师给的设计图750分辨率是物理分辨率,存在两倍关系。

  

如何做不同分辨率设备的自适应?

  以 ip6 的物理像素750X1334为视觉稿进行设计,而在小程序中使用 rpx 为单位。

  ip6 下 1px = 1rpx = 0.5pt 。

  使用 rpx 小程序会自动在不同分辨率下进行转换,而使用 px 为单位不会。

为什么要用 iphone6 的物理分辨率来做设计图?

  ip6 下 1px = 1 rpx

  ip6 plus 下 1px = 0.6 rpx

   官方API也是建议使用ip6进行设计换算 

  注意:不是所有的单位都适合用 rpx,例如字体,字体自适应的话,小机型就会造成字体过小,用户看不清,应该用px 。

编写第一个微信小程序界面的更多相关文章

  1. 微信小程序开发教程(二)创建第一个微信小程序

    在安装完“微信Web开发者工具”之后,通过开发者的微信扫码进入后,如图. 点击“添加项目”,填入之前获得的AppID(无AppID可忽略),输入项目名称“Hello WXapplet”,选定本地文件夹 ...

  2. 如何解决微信小程序界面适配问题-引用-生命周期回调函数-优化机制-样式引入

    如何解决微信小程序界面适配问题 .wxss page{ height: 100%; width:750rpx; } this.setData({ imageWidth: wx.getSystemInf ...

  3. 第一个微信小程序

    微信官方已经开放微信小程序的官方文档和开发者工具.前两天都是在看相关的新闻来了解小程序该如何开发,这两天官方的文档出来之后,赶紧翻看了几眼,重点了解了一下文档中框架与组件这两个部分,然后根据简易教程, ...

  4. 昏睡了8年的我带着第一个微信小程序今年醒了

    工作8年之久的我今年算是彻底长进了,以前是知道自己的水平不咋地,但是没什么行动,理由是3年抱2娃,需要照顾孩子. 去年年底偶然一次看技术贴的时候,看到了博客园这个平台,看了很多大牛们的经历,也知道公司 ...

  5. 第一个微信小程序(实现点击一个按钮弹出toast)

    今天根据网上的教程搭建了微信小程序的环境,然后看文档做了一个简单的小应用. 项目的目录是这个样子的: app.js.app.json.app.wxss是全局文件,必不可少的文件.定义在app.wxss ...

  6. 第一个微信小程序的初始化过程、小程序微信开发平台的下载、如何注册一个微信小程序的账号

    文章目录 1.注册微信小程序账号 1.1 小程序的注册流程 1.2 登录小程序账号 2.下载微信小程序开发者平台 3.新建一个小程序 3.1 点击加号 3.2 填写项目目录和小程序ID 3.3 点击确 ...

  7. 我的第一个微信小程序

    今年国庆假期的时候,在家里带宝宝.想下载一个哄宝宝玩的游戏,从 App Store上搜索了一圈,发现评分高的基本上都是收费的.因为App Store上有限免机制,所以就萌发了做一款关注限免应用的小程序 ...

  8. 第一个微信小程序踩的几个小坑

    1.小程序测试调试阶段可以打开项目设置中的“开发环境不校验请求域名.TLS版本及HTTPS证书”配置,即可以和自己的服务器联调了. (需要在工具栏的设置 -> 项目设置 中配置,mac下直接co ...

  9. 1-微信小程序开发(安装软件和运行第一个微信小程序)

    https://developers.weixin.qq.com/miniprogram/dev/ 我的 打开 上传成功后

随机推荐

  1. OpenCV学习笔记之课后习题练习3-4

    练习:创建一个大小为100*100的三通道RGB图像.将它的元素全部置0.使用指针算法以(20,5)与(40,20)为顶点绘制一个绿色平面. 参考博文:blog.csdn.net/qq_2077736 ...

  2. SQL Fundamentals: 数据更新及事务处理(INSERT INTO,UPDATE,DELETE,事务,锁)

    SQL Fundamentals || Oracle SQL语言 在SQL语句中,数据操作语言DML由两部分组成,查询(DQL).更新操作(增加,修改,删除). 增加数据(INSERT INTO) 数 ...

  3. a new way of thinking about a problem

    PHP Advanced and Object-Oriented Programming Larry Ullman   The first thing that you must understand ...

  4. queue hardware os

    Computer Science An Overview 11th Edition Queues are often used as the underlying structure of a buf ...

  5. Linux 工具,一本好书 大牛的博客

    http://linuxtools-rst.readthedocs.io/zh_CN/latest/base/index.html http://design-patterns.readthedocs ...

  6. 2018/03/18 每日一个Linux命令 之 split

    spilt 命令用于将一个文件分割成数个 默认情况下 按照每1000 切割成一个小文件 split [-参数] [要切割的文件] [输出文件名] 参数 -[行数] 指定每多少行切成一个小文件 -b 字 ...

  7. shell脚本变量$#,$*,$$,$@,$0,$1,$2,$?的含义

    本文转录:https://blog.csdn.net/kejiaming/article/details/51859503 参数说明: $# 是传给脚本的参数个数 $ 是脚本本身的名字 $ 是传递给该 ...

  8. spfa 判断负环 (转载)

    当然,对于Spfa判负环,实际上还有优化:就是把判断单个点的入队次数大于n改为:如果总的点入队次数大于所有点两倍 时有负环,或者单个点的入队次数大于sqrt(点数)有负环.这样时间复杂度就降了很多了. ...

  9. vcenter web client chrome浏览器打开中文显示乱码

    使用如下链接试试看https://x.x.x.x/vsphere-client/?locale=zh_CN&csp

  10. Build-in Function:abs(),all(),any(),assii(),bin(),issubclass(),bytearray(),isinstance()

    print('abs():输出绝对值,是absolute的缩写--------------') print(abs(-1)) print('all()与any()------------------- ...