首先我的项目是点击编辑,打开一个编辑信息页面,在网页端显示效果如下:
有时候工作人员离开电脑,需要手机操作修改,但是弹出的编辑页面显示不全内容,也没办法通过触摸滑动页面看见左面的内容,如下图:
使用开发工具查看html代码,发现了该div样式中有这么一段内容
z-index: 19891015; width: 1000px; height: 600px; position: absolute; top: 172px; left: -316.25px;
其中 left:-316.25px:就是罪魁祸首
那么为什么会有这么一个left值呢,查看layui.js源码发现了原因;
这个left其实是layer.open 默认打开页面居中,自动计算的一个偏移量,用电脑浏览器打开的时候,因为屏幕大,所以显示成居中效果,结果用手机打开的时候,屏幕尺寸小,会得到一个负值,所以左边的内容就向left 负向移动了好多距离。
解决的办法是,在open打开中,先判断下屏幕大小,再主动设定一个offset值: