CSS响应式布局实现1920屏幕1rem等于100px

代码解析与实现

设置根元素的 font-size5.208333vw

假设你想让根元素的 font-size 基于视口宽度来动态调整。我们可以通过设置 font-size5.208333vw 来让 1rem 相当于视口宽度的 5.208333%。

  • 计算 5.208333vw: 当屏幕宽度为 1920px 时,5.208333vw 等于 5.208333% 的 1920px,即 5.208333 * 1920px ≈ 100px
设置 body 元素的 font-size0.16rem

通过将 body 的字体大小设置为 0.16rem,此时 body 的实际字体大小是根元素字体大小的 0.16 倍。假设根字体大小是 100px,则 body 的字体大小为 0.16 * 100px = 16px

完整的代码实现

// 设置根元素的字体大小(根据视口宽度调整)
document.body.parentNode.style.cssText = `font-size: ${5.208333}vw`; 

// 设置 body 元素的字体大小为 0.16rem,相当于根元素字体大小的 0.16 倍
document.body.style.cssText = 'font-size: 0.16rem';

解释

  1. 根元素的字体大小

    document.body.parentNode.style.cssText = `font-size: ${5.208333}vw`;
    
    • 这行代码将根元素(<html>)的 font-size 设置为 5.208333vw
    • 5.208333vw 是相当于视口宽度的 5.208333%。因此,屏幕宽度为 1920px 时,5.208333vw 等于 100px
  2. body 元素的字体大小

    document.body.style.cssText = 'font-size: 0.16rem';
    
    • 这行代码将 body 元素的字体大小设置为 0.16rem。假设根元素的字体大小是 100px,那么 body 元素的字体大小为 0.16 * 100px = 16px

示例效果

  1. 当屏幕宽度为 1920px 时:

    • 根元素的 font-size100px5.208333vw)。
    • body 元素的 font-size16px0.16rem)。
  2. 当屏幕宽度缩小到例如 960px 时:

    • 根元素的 font-size 将变为 5.208333vw960 * 5.208333 / 100 = 53.333px)。
    • body 元素的 font-size0.16rem,即 53.333px * 0.16 = 8.533px

小结

  • 通过设置 font-size: 5.208333vw 来让根元素的字体大小根据视口宽度动态变化。
  • 使用 0.16rem 设置 body 的字体大小,意味着 body 的字体大小将始终是根元素字体大小的 0.16 倍。
  • 这种方法适用于响应式布局,确保在不同屏幕宽度下能够动态调整页面元素的字体大小。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值