原生页面响应式布局(rem)

注意:rem是依赖根元素的font-size

本文以版心1200px设计图1920px为例

首先为了方便计算,推荐依据原尺寸将根元素的font-size设置为1px

行内块元素带有的间隙可能会受到影响,需要手动清除间隙:

第一步:给该行内(块)元素的父元素设置:font-size:0;

第二步:然后给子元素单独设置 font-size 即可

响应式改变 font-size 的js代码如下:

//按照宽度1920图算, 1rem = 1px;
(function(win, doc) {
   let wid = null;
    function changeFontSize() {
        wid = doc.documentElement.clientWidth;
        // 设置一个最小宽度
        if (doc.documentElement.clientWidth < 1200) {
            wid = 1200;
        }
        doc.documentElement.style.fontSize = wid / 1920 + 'px';
    }
    changeFontSize();
    win.addEventListener('resize', changeFontSize, false);

})(window, document);

将此段代码放在一个单独的js文件里,每个html文件都引入即可

注意:

此js文件需要放在 head 中引入,否则在页面载入时会出现字体大小混乱现象

此js文件需要放在 head 中引入,否则在页面载入时会出现字体大小混乱现象

此js文件需要放在 head 中引入,否则在页面载入时会出现字体大小混乱现象

 在初始化文件init.css中需设置一个最小宽度

html,
body{
    width:100%;
    min-width:1200px; // 可自行调整最小宽度
}

设置元素样式时将 px 值换成 rem 即可

例:width: 520px;  ===> width: 520rem;

这就是全部步骤了,简单又方便!!! 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值