# @alitajs/postcss-plugin-px2rem 中文文档

规范地址：https://npmcn.com/package/%40alitajs/postcss-plugin-px2rem/

版本：0\.0\.1
npm 元数据更新时间：2022-06-07T09:42:44.218Z
中文译文更新时间：2026-11-06T01:49:39.125Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40alitajs/postcss-plugin-px2rem
原文对照：https://npmcn.com/package/%40alitajs/postcss-plugin-px2rem/?lang=original
项目主页：https://github.com/ant-tool/postcss-plugin-px2rem#readme
源码仓库：https://github.com/alitajs/postcss-plugin-px2rem

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：11.7 kB，5 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：1 个
- 首次发布：2021-08-24T07:48:21.640Z
- 最新版本发布：2021-08-24T07:48:21.830Z
- 近 30 天下载量：6979（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：1（近 12 个月 0 个）

## 中文简介

用于 PostCSS 从多单元生成雷姆单元的插件 .

## 安装

```sh
npm install @alitajs/postcss-plugin-px2rem
```

也可以使用：`pnpm add @alitajs/postcss-plugin-px2rem`、`yarn add @alitajs/postcss-plugin-px2rem`、`bun add @alitajs/postcss-plugin-px2rem`

## README

# px2rem 邮政编码

[![NPM version](https://img.shields.io/npm/v/postcss-plugin-px2rem.svg?style=flat)](https://npmjs.org/package/postcss-plugin-px2rem) [![Build Status](https://img.shields.io/travis/ant-tool/postcss-plugin-px2rem.svg?style=flat)](https://travis-ci.org/ant-tool/postcss-plugin-px2rem) [![Coverage Status](https://img.shields.io/coveralls/ant-tool/postcss-plugin-px2rem.svg?style=flat)](https://coveralls.io/r/ant-tool/postcss-plugin-px2rem) [![NPM downloads](http://img.shields.io/npm/dm/postcss-plugin-px2rem.svg?style=flat)](https://npmjs.org/package/postcss-plugin-px2rem) [![Dependency Status](https://david-dm.org/ant-tool/postcss-plugin-px2rem.svg)](https://david-dm.org/ant-tool/postcss-plugin-px2rem)

postcs 插件 px2rem.

![](http://postcss.github.io/postcss/logo-leftp.svg "Philosopher’s stone, logo of PostCSS")

## 特征

用于 PostCSS 的插件,从像素单位生成雷姆单位.

## 安装

```bash
$ npm i --save postcss-plugin-px2rem
```

## 使用量

### 投入和产出

```css
// input
h1 {
  margin: 0 0 20px;
  font-size: 32px;
  line-height: 1.2;
  letter-spacing: 1px;
}

// output
h1 {
  margin: 0 0 0.2rem;
  font-size: 0.32rem;
  line-height: 1.2;
  letter-spacing: 0.01rem;
}
```

### 原文

```javascript
import { writeFile, readFileSync } from 'fs';
import postcss from 'postcss';
import pxtorem from 'postcss-plugin-px2rem';

const css = readFileSync('/path/to/test.css', 'utf8');
const options = {
  replace: false,
};
const processedCss = postcss(pxtorem(options)).process(css).css;

writeFile('/path/to/test.rem.css', processedCss, err => {
  if (err) throw err;
  console.log('Rem file written.');
});
```

### 带网络包装

```javascript
import px2rem from 'postcss-plugin-px2rem';
const px2remOpts = {
  ......
};
 
export default {
  module: {
    loaders: [
      {
        test: /\.css$/,
        loader: 'style-loader!css-loader!postcss-loader',
      },
    ],
  },
  postcss: [px2rem(px2remOpts)],
}
```

### 与 [工具建设](https://github.com/ant-tool/atool-build)

`webpack.connfig.js`

```javascript
import webpack from 'atool-build/lib/webpack';
import px2rem from 'postcss-plugin-px2rem';

export default webpackConfig => {
  const px2remOpts = {
    ......
  };
  webpackConfig.postcss.push(px2rem(px2remOpts));

  return webpackConfig;
};
```

## 配置

默认 :

```js
{
  rootValue: 100,
  unitPrecision: 5,
  propWhiteList: [],
  propBlackList: [],
  exclude:false,
  selectorBlackList: [],
  ignoreIdentifier: false,
  replace: true,
  mediaQuery: false,
  minPixelValue: 0
}
```

-   `rootValue` (数目) 根元素字体大小。 默认为100.
    -   如果 rootValue 是对象, 例如 `{ px: 50, rpx: 100 }`,它会 将 rpx 改为 1/100雷姆,并将 px 改为 1/50雷姆.
-   `unitPrecision` (数目) 允许 REM 单位增长到的小数.
-   `propWhiteList` (箭头) 从px到rem可以变化的属性.
    -   默认是一个空数组,它意味着禁用白色列表并启用所有属性.
    -   数值需要精确匹配.
-   `propBlackList` (箭头) 不应从 px 到 rem 更改的属性 .
    -   数值需要精确匹配.
-   `exclude` (Reg)一种排除一些文件夹的方法, eg. / (node module)/.
-   `selectorBlackList` (箭头) 选择者忽略并离开 px .
    -   如果值是字符串,它会检查是否选择器包含字符串 .
        -   `['body']` 将匹配 `.body-class`
    -   如果值是正则表达式,它会检查选择器是否匹配正则表达式.
        -   `[/^body$/]` 将匹配 `body` 但没有 `.body`
-   `ignoreIdentifier` (Boolean/String)一种忽略单一属性的方法,当被忽略识别器启用时,那么 `replace` 将设定为 `true` 自动.
-   `replace` (Boolean)取代了包含雷姆的规则而不再添加倒扣.
-   `mediaQuery` (宝莲. 允许 px 在媒体查询中转换 .
-   `minPixelValue` (数字)设置最小像素值来替换.

### 许可证

麻省理工学院

## 常见问题

### @alitajs/postcss-plugin-px2rem 是什么？

用于 PostCSS 从多单元生成雷姆单元的插件 \.

### 如何安装 @alitajs/postcss-plugin-px2rem？

在项目目录运行 npm install @alitajs/postcss-plugin-px2rem，或使用 pnpm add / yarn add / bun add。

### @alitajs/postcss-plugin-px2rem 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/alitajs\_\_postcss-plugin-px2rem 是否存在。

### @alitajs/postcss-plugin-px2rem 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @alitajs/postcss-plugin-px2rem 可以商用吗？

@alitajs/postcss-plugin-px2rem 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @alitajs/postcss-plugin-px2rem 的下载量有多少？

根据 npm 官方下载统计，@alitajs/postcss-plugin-px2rem 在 2026/10/06 – 2026/11/04 这 30 天内被下载 6,979 次，日均约 233 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @alitajs/postcss-plugin-px2rem 还在维护吗？

最新版本 0\.0\.1 发布于 2021/08/24（5 年前）；至今共发布 1 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/08/24。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

