npm 包 postcss-quantity-queries 使用教程

阅读时长 4 分钟读完

简介

postcss-quantity-queries 是一款基于 PostCSS 的 npm 包,可以方便地为 CSS 属性的数量值添加对应的媒体查询。比如,我们可以使用该包将:

转化为:

-- -------------------- ---- -------
- -
  ---------- -----
  ------------ ----
-

------ ----------- ------ -
  - -
    ---------- -----
  -
-

------ ----------- ------ -
  - -
    ------------ ----
  -
-

------ ----------- ------- -
  - -
    ---------- -----
  -
-

这样做的好处就是可以针对不同宽度的屏幕设置不同的 CSS 属性值,从而提高页面的响应能力。

使用方法

  1. 安装 postcss-quantity-queries:

  2. 在 PostCSS 配置文件中使用该插件:

  3. 在 CSS 中使用带有数量值的属性,插件将自动生成媒体查询:

    -- -------------------- ---- -------
    - -
      ---------- -----
      -------------- ---- ------ ----------- ------ -
        ---------- -----
      -
      ------------ ----
      ----------------- --- ------ ----------- ------ -
        ------------ ----
      -
      --------------- ---- ------ ----------- ------- -
        ---------- -----
      -
    -

参数说明

postcss-quantity-queries 插件还提供了一些参数可以配置,以支持更复杂的使用场景:

propertyNameRegexp

类型:RegExp,默认值:/^(.?)((mq\d))$/

设置用于匹配属性名称的正则表达式。例如,如果您要在属性名中使用 @media-query 而不是 (mqX) 的前缀,则可以将其设置为 /@media (.?)!((mq\d))/。

propertyValueRegexp

类型:RegExp,默认值:/^(.*?) !?((.?)) (.)$/

设置用于匹配属性值的正则表达式。例如,如果您要在属性值中使用 (@media-query: X) 的格式,而不是 !important,那么您可以将其设置为 /^(.*?) *(@media-query: (.?)) (.)$/。

unit

类型:String,默认值:'px'

设置媒体查询使用的单位。默认为像素。

steps

类型:Array,默认值:[640, 768, 1024]

设置媒体查询的阈值集合。默认为 [640, 768, 1024]。

示例代码

下面是一个完整的使用示例,假设您有一个值为 16px 的字体大小,在某个屏幕宽度下要设置为 20px:

在这个例子中,我们使用了 postcss-quantity-queries 插件中自带的默认参数,用它生成了符合 CSS 规范的媒体查询语句,最终生成的 CSS 代码如下:

-- -------------------- ---- -------
- -
  ---------- -----
-

------ ----------- ------- -
  - -
    ---------- -----
  -
-

可以看到,在宽度为 1000px 以上时,字体大小会变为 20px,从而让您的网站更加响应式。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64160

纠错
反馈