根据项目要求实现放大缩小页面时中间的登录部分要一直居中

而且项目用的颜色为过渡 (不然也不会出现这个问题)

来看下我们的登录页面吧  最终实现效果为下图 放大缩小都没问题

开始做的时候 为了实现 挺费劲的  因为这个过渡让人很无语。在360极速模式下出现这个问题,其他浏览器都没问题,那就只能解决了。

布局是这样的   body的高度设为auto;里面包含一个div  再里面为具体登录和下面描述两部分,都知道左右居中很简单 margin:0 auto就行了,后面说上下高度设置问题。开始设置body高度为100%但是放大就不行了 过渡出现问题,

所以想的是设为了auto让他距离上下高度一样不就实现居中了。然后我放大缩小的时候调用resize同样设置一下就可以了,问题出现的原因就在一个margin  一个padding  开始我设置的margin不行   后来改为padding就行了。

 

 

 

 

 

 

 

 

 

 

具体代码

/* 开始页面为居中 */

$("#login_tl").css("paddingTop",Math.abs(($(window).height()-$("#login_tl").height())/2));
$("#login_tl").css("paddingBottom",Math.abs(($(window).height()-$("#login_tl").height())/2));
放大缩小变化时
$(window).resize(function(){
$("#login_tl").css("paddingTop",Math.abs(($(window).height()-$("#login_tl").height())/2));
$("#login_tl").css("paddingBottom",Math.abs(($(window).height()-$("#login_tl").height())/2));
$("body").css("overflow","auto");
})

posted on 2018-08-03 17:20  努力才会进步  阅读(3076)  评论(0编辑  收藏  举报