移动端布局重构:PX转REM布局教程

移动端布局重构,将 px 改为 rem 布局

移动端布局逆向工程时,将Pixel(PX)块改为Relative Block(REM)布局,可以提高代码的可维护性和适应性。
以下步骤详细说明了如何实现此转换。
首先,确保HTML文档的基本字体大小设置为16px,并且动态计算HTML字体大小以适应不同设备的屏幕尺寸。
请注意,设计稿宽度为750px,设计时使用的iPhone6/7/8宽度为375px。
如果取元素宽度和高度时除以2,则无需另外除750。
而是将设备宽度除以设计稿宽度。
通过vScode -In“pxtorem”连接,PX 到 REM 的转换会自动完成。
安装-in插件后,在要转换的页面上按ALT+Z即可自动转换。
这样,项目中的 PX 布局可以快速转换为 REM 布局。
如果参考字体大小不是默认的16px,而是20px,则需要相应调整计算公式和插件设置。
具体步骤如下: 1.更改计算公式以适应新参考字体的大小。
2.修改-in连接中使用的`cssrem:rootfontsize'设置来计算参考字体大小,并将默认值从16px更改为20px。
在 VSCODE 中,通过 File->Preferred->Settings 查找设置“px”搜索并将“cssrem: rootfontsize”选项调整为 20px。
此时按ALT+Z,-IN存根会自动基于20PX进行转换。
通过上述步骤,在移动端改造过程中实现了PX到REM的转换,进一步优化了代码的适配性和可维护性。

快速入门postcss插件:自动转换px到rem

PostCSS是一种转换器(转换编译器,称为翻译人员),用于CSS,它就像JS的BABBABLE一样,可以分析和转换CSS代码。
同时,它还提供了用于调整转换的插入机制。

在本节中,我们将通过自动将PX转换为REM的功能介绍PostCSS插件模块。

PostCSS

Postcss的原理是从CSS到CSS的翻译。
像Babel一样,它分为三个阶段:分析,转换和生成。
不同的转换插件在转换阶段工作,并基于AST执行分析和转换。

css的AST比JS容易得多。
主要有以下类型:

atrule:以 @rules开头,例如:

@mediacreenand(min-width:480px){body

规则:选民开头的规则,例如:

羊毛{padding:5px;}

decl:特定样式,用于示例:

填充:5px;

可以通过asexplorer.net

如何在作品中写下Postcsssssssssssssssssssplug in Works In Works In Works In Works In Works In Works In Works In Works In Works in Works in Works in Works in Works in Works in Works in Works in Works中在作品中工作的转换阶段,以处理ast-nodes,是插件模块的形状,如下所示:

constplugin =(options = {})=> {return {returt {postcssplugin:'plugin name',rule(node(node(node) ){},dectaration(node){},atrule(node){}}}}}}}}

外部函数接受选项,返回插件对象,声明听众以处理哪个节点,然后然后在对应的听众中写下治疗逻辑。

您也可以像这样写:

module.exports =(opts = {})=> {returt {postcssplugin:'插件名称',准备(结果){//您可以放置这里的某些公共信息在这里逻辑返回n {everaration(node){},rule(node){},atrule(node){}}}}}}}}}}}}}

与第一个又出现相比,优势是您可以存储一些公共逻辑。

您可以像这样运行插件模块:

constpostcss = requient('postcss'); - 大小:20px;}')。
关于您的技能。

说明案例

px的实际要求是固定长度的单位,如果我们想通过一组样式自定义不同设备的显示,则设备显示端口的大小是不同的,我们必须相对较设置一个常用的设备是Str。

与HTML元素的字体大小相关,REM的核是比例缩放的。

例如,如果将HTML的字体大小设置为100px,则1REM等于100px。
如果随后的样式为200px,则将其写为2REM。

以这种方式,我们只需要将字体大小更改为HTML即可调整不同屏幕宽度的显示,并且特定的设备被按比例缩放。

我们必须根据HTML的字体大小将所有PX转换为REM。
这通常是手动完成的,但是在了解计算方法后,您可以使用PostCSS插头更加麻烦。
ins会自动进行。

然后,我们将实现此PostCSS插件模块

代码实现

让我们看一下插件的基本结构。
我们只需要声明侦听器以进行语句处理:

constplugin =(options)=> {return {postcs sllugin:'Postcss-simple-px2rem',declaration(decl){{}}}}}}}

您要做的是在REM的申报样式中转换PX,一个简单的常见替换将做:

constplugin =(optio ns)=> {constpxreg =/( \ d+)px/igE; rem';});});});}}

替换相应的字符串,以下参数是组,第一组是PX的值。

与PX相对应的REM的计算需要与1REM相对应的PX值,可以通过选项提交。

我们测试:

postcss([{base:base:100}))。
console.log(resu lt.css);})

您可以看到转换正确完成:

当然,我们的插件只是一个示例,还不是完美的,需要更复杂的规则。

摘要

postcs.css transpiler,就像babel是JS的转介剂一样,Postcss的AST只有几个节点,这相对容易。

PostCSS还提供插件功能,可以进行一些自定义的分析和转换。

我们已经实现了一个简单的PX自动REM插件-IN:

rem是一种通过类似设备宽度显示不同设备宽度的表单。
可以使用PostCSS插件来完成。

实际上,分析有许多应用程序和PostCSS插头的转换功能,例如切换主题颜色。
然后进行转换。

CSS能力的PostCSS分析和转换仍然非常有用和有用。

相关推荐
相机哪个品牌最好
好的相机有哪些品牌好的相机品牌包括佳能、尼康、索尼、富士和松下。1.佳能:全球知名相机制造商,以高品质图像、卓越性能和可靠的用户体验而闻名。佳能拥有多元化的产
2020年LPR利率一览与变动解析
lpr2020年利率1、2020年8月20日,中国人民银行公布最新贷款报价利率(LPR):1年期LPR为3.85%,5年期及以上LPR为4.65%。2、2020年2月21日,我国新的贷款市场报价利率(LPR)发布。1年
8K分辨率与4K分辨率之间的真相
4k是不是8开的一半不,4K不是八分之一。这是因为4K和8K之间存在误解。实际上,4K是指像素数为3840x2160的显示分辨率,即水平3840像素、垂直2160像素。8K意味着每个像素由8位数据
无线路由器闪烁问题排查攻略
无线路由器一直闪怎么回事?一般是路由器线松动或者温度过高。松开它,单击计算机,打开设备管理器,找到您的网络适配器,停止它,然后重新启动它。可能没有问题。2.如果电源灯(即电源灯)正常,请检查下网口是否正常。3.您可以将网络电缆直接插入计算机。这意味着您的网络电缆没有问题。
热门文章
集成Wi-Fi与蓝牙功能的一体化芯片解析

集成Wi-Fi与蓝牙功能的一体化芯片解析

苹果已暂停正在开发的WiFi芯片!上个月有报道称,苹果计划自行开发一款关键芯片,目标是在2025年取代博通的相关芯片。博通主要为苹果提供具有WiFi和蓝牙功能的集成芯片,苹果
2025-01-22
电脑蓝牙鼠标连接故障排查攻略

电脑蓝牙鼠标连接故障排查攻略

蓝牙鼠标,电脑搜不到。由于蓝牙未激活,计算机无法找到蓝牙鼠标。解决办法是:1.右键单击并单击显示设置。2.单击“设置”页面顶部的“主页”。3.在Win
2025-01-23
小米笔记本触摸板禁用/开启教程及双屏功能介绍

小米笔记本触摸板禁用/开启教程及双屏功能介绍

小米笔记本触摸鼠标锁住了怎么办触摸板被禁用。只需打开即可。解决方案是:步骤1:单击“开始”按钮,然后选择“设置”。如图所示:步骤2:输入设置页面。如图所示:步骤3:在搜索框中输入“触摸垫”。如图所示:步骤4:转到“触摸垫”接口,然后选择触摸板“start”。
2025-01-25
笔记本电源不亮不充电?排查与解决方法

笔记本电源不亮不充电?排查与解决方法

笔记本插着电源不亮灯不充电?1、尝试运行CMOS(ECReset)1、请移除所有外部设备,如外部硬盘、打印机、存储卡和光驱(如果是内连,请移除CD-ROM),还包括读卡器中的交通卡等。2.关闭计算机电源。3.取下电源适配器。4.取出笔记本电池(如果您的电脑是移动电池模块)。5.长按电源键40秒
2025-01-24
主板CPU底座更换全攻略

主板CPU底座更换全攻略

台式电脑主板cpu底座针脚坏了可以换吗如果CPU底座损坏,请联系厂家或当地售后服务部门更换。CPU底座损坏原因:1、CPU底座保护盖未使用,异物落入易损坏触点上。2、用户安装CPU
2025-01-22
华为nova3e:配置解析与优缺点对比

华为nova3e:配置解析与优缺点对比

华为新出的nova3e值得入手吗华为nova3e手机性能出众,采用5.84英寸2280x1080(FHD)分辨率屏幕以及纤薄的19:9比例设计,单手操作更加方便舒适。摄影方面,nova3e正面配备24兆像素摄像头
2025-01-22
OPPOA1:老款手机的新视角与价值解析

OPPOA1:老款手机的新视角与价值解析

OPPOa1算老古董手机吗?品牌手机通常不被视为古董,而Oppoa1也不例外。真实的古董手机是旧的,过时的模型。随着时间的流逝,技术继续发展,智能手机的设计,性能和功能不
2025-01-24
华为mate 60

华为mate 60

华为mate60缺点华为Mate60的缺陷主要包括屏幕显示效果、发热问题、续航、拍照效果和价格。首先,虽然华为Mate60系列手机的屏幕在技术上非常出色,但与市场上其他高端手机品牌,例如
2025-01-21
推荐阅读

推荐 带集显与不带集显CPU性能与选择的解析

cpu集成显卡和独立显卡有什么区别?集成显卡工作时,会将部分运算能力分配给CPU,并占用电脑的内存作为显存。而且,由于嵌入式显示器的内置空间有限,散热也是一个大问题,这决

推荐 TP-LINKAP86入墙式AP酒店宾馆无线WiFi设置教程

tp-link面板ap86型入墙式ap酒店宾馆无线wifi怎么设置1、本例使用TP-LINK型号TL-WR703N的小型路由器,因其体积小、操作方便,适合教学演示。2、设备供电可通过手机充电线实现。一端连接路由器,另一端连接电源。3、通过网线将路由器连接到电脑的以太网接口。4.对于路由器上的RESET按钮,需要在设备电源状态下长按约6

推荐 OPPO手机数据迁移教程:轻松搬家中旧手机数据到新机

oppo手机如何把旧手机数据搬到新手机上1。首先,在Oppo手机桌面上打开[移动移动]的应用,如下图所示。2。然后在接口[移动移动]中选择选项[这是新的手机],如下图所示。3。然后确认旧手机的类型[Android手机的简介],如下图所示。4。当前,新机会会自动生成QR码,如下图所示。5。最后,在

推荐 明明有wifi为什么显示找不到

为什么手机搜不到自己家的Wifi信号?您找不到自己的Wi-Fi信号的原因可能有很多。以下是一些常见原因及解决方法:原因一:Wi-Fi信号被隐藏。有些路由器设置了隐藏SSID(网

推荐 戴尔笔记本电源已接通却未充电?原因及解决方法

电脑电量为0%,一直显示电源已接通,但未充电1.软件问题可能是原因:大多数计算机品牌,如戴尔、联想、索尼等,都提供专用的电源管理软件。这些软件可能包括电池保护模式,在检测到交流电源时防止电池充电和放电,以延长电池寿命。如果您的笔记本电脑不充电,您可以检查并调整电源管理软件中的相关设置,例如关闭电

推荐 笔记本无线开关在哪里

笔记本无线开关在哪里启用显示器型号:华为MateBookX系统版本:win101。2、开启无线的快捷键一般都有无线快捷键,通常有些笔记本需要同时按下无线开启和关闭键。3、首先打