基于父元素的高度居中自适应(移动端)

第一次接触H5微信页面,写了布局以失败告终,最后找到方法,并把关键点简化记录了下来,一个是 :before ,一个是js。
 
html结构:
<div class="a">
     <div class="b">我要基于父元素的高度居中</di>
</div>
 
此时的场景是,div.b 的高度为20%,随着父元素的高度变化而变化,父元素的高度也是不确定的。
 
css表现:
.a{position:relative;}
.a:before{content:"";display:block;padding-top:50%;}   //让 a 的高度始终为当前宽度的一半,这个是随自己情况变化。
.b{width:20%;height:20%;position:absolute;top:50%;}    //一定要绝对定位 top:50%

 

居中方法:
var h=$('.b')[0].clientHeight;      //获取子元素的当前高度
$(".b").css("marginTop", 0 - h / 2 + "px").css("lineHeight", h + "px");        //margin-top 为负自己高度的一半

 
   
//假若子元素里面有文字也可以自适应高度
$(".b").css("marginTop", 0 - h / 2 + "px").css("lineHeight", h + "px").css("lineHeight",h+"px");

 

 

转载于:https://www.cnblogs.com/Agrass/p/6601123.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值