mobileSite开发Tips
1,根节点(html,body)overflow属性会遮盖fixed定位元素
2,fixed元素点击时会弹出底部的菜单,应该是浏览器特性(safari)
3,fixed元素使用后,在body里面使用padding-bottom以占位,如果放入其他元素中,最好也占位,避免IOS滑动特性遮盖元素
4,inline-block可以使用float让元素保持在一条线上,无需使用vertical-align进行对齐
5,touch事件里阻止默认可以减少卡顿,但是touchStart里面如果阻止,页面的滑动会受影响。
6,需要交替显示的元素,最好都隐藏,根据需要显示,可以避免页面跳动
7,页面返回统一调用histroy.back()方法就好,特殊处理进行URL判断
8,从哪里来到哪里去,在link里加入returnUrl来进行回跳
9,对于浮动的banner关闭时间,浏览记录可以通过localStorage进行存储
10,如果浏览器开启无痕模式,webStroage的setItem方法会报错,需要try Catch提醒用户
11,使用.clearfix:after {content: "";display: table;clear: both;}进行图片和文字的横向排列
12,文字多行省略{overflow: hidden; text-overflow: ellipsis;display: -webkit-box; -webkit-line-clamp: 2;-webkit-box-orient: vertical;-webkit-box-pack: center;}
13,能使用background-image当背景的就不使用img标签,减少内存占用。
14,如果需要在click事件中在绑定click事件,最好先解绑。或者换一种思路,使用trigger进行触发click事件
15,需要计算内部宽度,可以用padding进行宽度的设置,用于布局
16,对于图片,如果想完整放入div,需要设置display:block,否则会出现白边,因为图片默认是inline属性
17,由于浏览器对border渲染不一致(或滑动时候会改变宽度),渲染粗细不均匀,可以使用div进行模拟border,也可以使用border-image代替
18,对于图片显示模糊,可以使用padding进行缩小,但不能从根本上解决问题
19,input去掉原本样式用图片代替时候,需要注意IOS里面会有黑色的背景,否则可能有黑边,设置background-color:white即可
20,关于跳转,支付宝WAP跳转,replace替代href跳转
21,定时器一定要记得清理,重复时会内存不释放就会卡顿
____________________________________
保持更新...mobileSite开发Tips的更多相关文章
- Spring MVC 学习笔记1 - First Helloworld by Eclipse【& - java web 开发Tips集锦】
Spring MVC 学习笔记1 - First Helloworld by Eclipse reference:http://www.gontu.org 1. 下载 Spring freamwork ...
- 游戏开发tips之RTTI(1)
首先说明标题的含义,怎么感觉就和定义一种语言一样,需要有一个规约呢..... 标题定义如下:游戏开发tip之+内容+(总tips的第几篇) 扩展如下:内容(一,二,三.....) 新手可怜,大神每一句 ...
- iOS开发tips总结
tip 1 : 给UIImage添加毛玻璃效果 func blurImage(value:NSNumber) -> UIImage { let context = CIContext(opti ...
- spark 基础开发 Tips总结
本篇博客主要是 sparksql 从初始开发注意的一些基本点以及力所能及的可优化部分的介绍: 所使用spark版本:2.0.0 scala版本:2.11.8 1. SparkSession ...
- Android开发Tips(2)
欢迎Follow我的GitHub, 关注我的CSDN. 我会介绍关于Android的一些有趣的小知识点. 上一篇. 1. Dagger2的开发顺序 Module -> Component -&g ...
- JQM开发Tips
1.radio Button 点击后有时候有高亮样式,有时候没有 解决方案: $("#task_form label").click(function () { $("# ...
- 移动端开发tips
为什么使用touch click有300sm的延迟 touch支持多点触摸 手势操作
- Angular开发Tips
1.在使用$routeProvider的时候,需要让模块依赖ngRoute,否则会提示找不到服务,示例: angular.module('module1', ['ngRoute']) .config( ...
- [Android开发Tips]Bean的定义
Bean: public class Data extends BaseBean { public ArrayList<DataItem> data = new ArrayList< ...
随机推荐
- Java:List(二)——List、ArrayList、LinkedList
List 模块:java.util.List 说明 List接口,表明一个序列 用法:List <E> ①直接用List承接一个ArrayList或LinkedList List < ...
- omnet++:cMessage、cSimpleModule、cGate
cMessage Message可以被调度(self-message).取消.从一个Gate发送出去.直接发给另一个module:所有以上,都是通过cSimpleModule来实现的. Message ...
- Linux CentOS7.X- 添加用户
1.创建用户 useradd username 其中,username是要创建用户的用户名(root使用): 2.设置密码 passwd username 其中,username是指定要修改密码的用户 ...
- base64学习笔记
关于是什么: 定义 8Bits字节编码方式之一 应用 传输8Bit字节代码 特性 Base64编码具有不可读性 描述 Base64可以成为密码学的基石,非常重要. 特点 可以将任意的二进制数据进行Ba ...
- 探索TiDB Lightning的源码来解决发现的bug
背景 上一篇<记一次简单的Oracle离线数据迁移至TiDB过程>说到在使用Lightning导入csv文件到TiDB的时候发现了一个bug,是这样一个过程. Oracle源库中表名都是大 ...
- ubuntu 学习中的坑-2021-11-22
安装ssh-server服务 查看是否安装ssh服务 #dpkg -l | grep ssh 安装ssh-server服务 #sudo apt-get install openssh-server 然 ...
- S5700上三层Vlan间隔离的例子
转自:https://forum.huawei.com/enterprise/zh/forum.php?mod=viewthread&tid=247591 公司最近的无线覆盖做好了,但让人无语 ...
- 解决 MySQL 的 Table is marked as crashed and should be repaired 问题
解决方法: 找到mysql的安装目录的bin/myisamchk工具,在命令行中输入: myisamchk -c -r ../data/mysql/user.MYI 然后myisamchk 工具会帮助 ...
- C/C++语言读取SEGY文件笔记(一)
SEGY IO 推荐采用的IDE为Visual studio(VS),本文档将介绍SEGY文件的读取与写入过程,即SEGY文件的复制. 因此,新建头文件ReadSeismic.h与C++文件ReadS ...
- 浅析Redis基础数据结构
Redis是一种内存数据库,所以可以很方便的直接基于内存中的数据结构,对外提供众多的接口,而这些接口实际上就是对不同的数据结构进行操作的算法,首先redis本身是一种key-value的数据库,对于v ...