关于浏览器适配的方案

这篇具有很好参考价值的文章主要介绍了关于浏览器适配的方案。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Rem 布局适配

如果需要使用 rem 单位进行适配,推荐使用以下两个工具:

  • postcss-pxtorem 是一款 PostCSS 插件,用于将 px 单位转化为 rem 单位
  • lib-flexible 用于设置 rem 基准值

PostCSS 示例配置

下面提供了一份基本的 PostCSS 示例配置,可以在此配置的基础上根据项目需求进行修改。

// postcss.config.js

module.exports = {
  plugins: {
    'postcss-pxtorem': {
      rootValue: 37.5,
      propList: ['*'],
    },
  },
};

其他设计稿尺寸

如果设计稿的尺寸不是 375,而是 750 或其他大小,可以将 rootValue 配置调整为:

// postcss.config.js

module.exports = {
  plugins: {
    // postcss-pxtorem 插件的版本需要 >= 5.0.0
    'postcss-pxtorem': {
      rootValue({ file }) {
        return file.indexOf('vant') !== -1 ? 37.5 : 75;
      },
      propList: ['*'],
    },
  },
};

其他方案

不使用插件的情况下,也可以直接在js里引入这段代码,1920是设计图的设计宽度,也可以自己根据UI给的设计图的宽度进行设置,然后就可以在css里使用rem单位了,如设计图里div为100px,则转化为rem则为1rem


(function (doc, win) {
    var docEl = doc.documentElement,
        resizeEvt = 'onorientationchange' in window ? 'onorientationchange' : 'resize',
        recalc = function () {
            var clientWidth = docEl.clientWidth;
            console.log('clientWidth-----------------', clientWidth)
            console.log('clientHeight-----------------', docEl.clientHeight)
            if (!clientWidth) return;
            // if (clientWidth >= 375) { //可以设置适配屏幕大小
            //     docEl.style.fontSize = '100px';

            // } else {
            //     docEl.style.fontSize = 100 * (clientWidth / 375) + 'px';
            // }
            docEl.style.fontSize = 100 * (clientWidth / 1920) + 'px';
        };

    if (!doc.addEventListener) return;
    win.addEventListener(resizeEvt, recalc, false);
    doc.addEventListener('DOMContentLoaded', recalc, false);
})(document, window);

二、Viewport 布局

如果需要使用 viewport 单位 (vw, vh, vmin, vmax),推荐使用 postcss-px-to-viewport 进行转换。

postcss-px-to-viewport 是一款 PostCSS 插件,用于将 px 单位转化为 vw/vh 单位。

PostCSS PostCSS 示例配置

下面提供了一份基本的 PostCSS 示例配置,可以在此配置的基础上根据项目需求进行修改。

// postcss.config.js

module.exports = {
  plugins: {
    'postcss-px-to-viewport': {
      viewportWidth: 375,
    },
  },
};

 文章来源地址https://www.toymoban.com/news/detail-429447.html

到了这里,关于关于浏览器适配的方案的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端---需要了解浏览器相关知识--浏览器请求服务器资源---缓存

    掘金1:浏览器缓存 掘金2 :浏览器缓存 跟别人怎么讲,从大的说:缓存的原理是什么? 再说什么是浏览器缓存? 浏览器缓存 请求(静态资源 | 动态资源) 一、缓存是什么? 二、为什么? 浏览器是如何判断是否使用缓存的??第一次请求网页 第二次请求相同网页: 三、怎

    2024年02月12日
    浏览(55)
  • vue3视频大小适配浏览器窗口大小

    目标:按浏览器窗口的大小,平铺视频,来适配屏幕的大小 。 考虑使用 DPlayer.js、video.js、vue-video-player等视频插件,但报了各种各样的错;试过使用 js 对视频进行同比例放大,再判断其与窗口的大小取最小值,思路没错,但我的获取视频大小是undefined,大概率是哪里出问题

    2024年02月06日
    浏览(40)
  • 【移动端网页布局】移动端网页布局基础概念 ④ ( 物理像素 | 物理像素比 | 代码示例 - 100 像素在 PC浏览器 / 移动端浏览器 显示效果 )

    移动端 网页开发 与 PC 端开发有很多不同之处 , 在图片处理方向需要采用 二倍图 / 三倍图 / 多倍图 方式进行图片处理 ; 图片处理的方式与如下的 物理像素 与 物理像素比 概念相关 ; 物理像素 : 物理像素就是 设备 上的分辨率 , 如 1920 x 1080 像素 , 就是宽度上有 1920 个像素 , 高

    2023年04月23日
    浏览(47)
  • html5移动端适配;检测浏览器信息函数

    html5移动端适配 浏览器信息检测 文本可编辑 在文本标签上加上属性contenteditable=“true” 深拷贝对象

    2024年02月19日
    浏览(43)
  • vue自适应布局(各种浏览器,分辨率)

    spa页面的layout布局对于前端项目的影响至关重要,在我们进行web端开发的时候,前端的各种大小屏幕,各种内核的浏览器不同,会导致我们的页面呈现出不一样的效果,如何进行更好的取舍,怎么能够达到产品对于系统展示效果的满意度,其实我们要前端有一套布局理念,这

    2024年02月02日
    浏览(42)
  • 网页布局(解决浏览器缩放页面乱版问题)

    主要解决两个问题: 1. div盒子随Ctrl+【+/-】缩放而缩放的问题 2. 最小化窗口然后进行缩放页面的布局问题 3. 顶部导航固定问题 ### 第一个问题,则需了解 (1) 容器的布局:margin: auto、定位等等 (2) 尺寸单位:具体尺寸、可视尺寸(vh、vw)、百分比尺寸 ### 第二个问题,则需了解

    2024年02月04日
    浏览(55)
  • elementui前端flex布局兼容IE10浏览器常用属性使用

    IE10以下完全不兼容flex,IE10部分兼容,使用时对应chrome的用法为如下所示: 注:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 inherit。

    2024年02月13日
    浏览(36)
  • 【Tricks】关于如何防止edge浏览器偷取chrome浏览器的账号

    前段时间edge自动更新了,我并没有太在意界面的问题。但是由于我使用同一个网站平台时,例如b站,甚至是邮箱,edge的账号和chrome的账号会自动同步,这就导致我很难短时间内切换账号,亦或是同时登录两个账号。 It is quite ANNOYING. 于是就有了这篇杂谈博客。这里特别感谢

    2024年02月07日
    浏览(63)
  • 浏览器兼容模式如何设置?只需要跟着下面的步骤设置

    许多考生在报考教师资格证或者其他的考试报名,会遇到浏览器兼容设置的问题。与其到时急急忙忙来设置浏览器的兼容模式,不如提前设置好,免了后顾之忧。 浏览器兼容模式怎么设置?一起来看看关于浏览器兼容模式的含义以及设置方式吧! 操作环境: 演示机型:Del

    2024年02月07日
    浏览(53)
  • 记录--关于浏览器缓存策略这件事儿

    我们打开百度这个网站并刷新多次时时,注意到百度的logo是没有每次都加载一遍的。我们知道图片是img标签中的src属性加载出来的,这也需要浏览器去请求图片资源的,那么为什么刷新多次浏览器只请求了一次图片资源呢?这就涉及到了 浏览器的缓存策略 了,这张图片被浏

    2024年02月13日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包