美文网首页
sass-rpx 微信小程序开发 px -> rpx 转换

sass-rpx 微信小程序开发 px -> rpx 转换

作者: PeckZeg | 来源:发表于2017-01-17 10:08 被阅读0次

微信小程序这个幺蛾子,不仅自己搞了一套所谓 WXSS 的样式表,还创造了一个新的单位 rpx

这时候问题就来了,现在的设计稿一般基于 iPhone6(375px × 667px),势必在其他尺寸的手机中有有所不同。在手机浏览器上,为了消除差异,我们可以使用 rem 作为单位,通过改变 html 下的 font-size 来消除在不同尺寸手机上的差异,但是在微信小程序上只能通过 rpx 来消除。

在使用 sass 时,前辈们已经实现了从 px 转换到 rem 的各种轮子,其中比较赞的有 @pierreburel 所编写的 sass-rem。本文所使用的轮子也是 fork 自 sass-rem

基于前辈们的努力,我便重写了 sass-rem,以适用于 rpx 的场景。

具体项目请参见:sass-rpx


示例

基本

SCSS

@import "rpx";

h1 {
  @include rpx(font-size, 24px); // Simple
  @include rpx(border-bottom, 1px solid black); // Shorthand
  @include rpx(box-shadow, 0 0 2px #ccc, inset 0 0 5px #eee); // Multiple values
  text-shadow: rpx(1px 1px #eee, -1px -1px #eee); // Function and multiple values
  // List support (Sass 3.3+)
  @include rpx((
    margin: 20px 1px,
    padding: 10px
  ));
}

CSS

h1 {
  font-size: 48rpx;
  border-bottom: 2rpx solid black;
  box-shadow: 0 0 4rpx #ccc, inset 0 0 10rpx #eee;
  text-shadow: 2rpx 2rpx #eee, -2rpx -2rpx #eee;
  margin: 40rpx 2rpx;
  padding: 20rpx;
}

修改设计稿类型

SCSS

@import "rpx";

$rpx-base-draft: iphone6 plus;

h1 {
  @include rpx((
    font-size: 24px,
    margin: 10px 1rpx
  ));
}

CSS

h1 {
  font-size: 48rpx;
  margin: 20rpx 1rpx;
}

相关文章

  • sass-rpx 微信小程序开发 px -> rpx 转换

    微信小程序这个幺蛾子,不仅自己搞了一套所谓 WXSS 的样式表,还创造了一个新的单位 rpx。 这时候问题就来了,...

  • 微信小程序

    px与rpx: px:微信小程序里面px跟web端px是不一样的,微信小程序里面的px指逻辑分辨率,即pt,比如i...

  • rpx和rem

    一、 rpx:全称“response pixel”,即响应式的px,rpx单位是微信小程序中css的尺寸单位,它可...

  • 微信小程序 尺寸单位rpx与px,rem相互转换

    rpx :微信小程序开发中新出了尺寸单位rpx(responsive pixel): 可以根据屏幕宽度进行自适应。...

  • 微信小程序开发--从px到rpx

    微信小程序开发--从px到rpx: 我一直在想,我是不是有必要再写这一节,还是给大家提供一些阅读链接。 因为关于单...

  • 微信小程序开发--从px到rpx:

    微信小程序开发--从px到rpx: 我一直在想,我是不是有必要再写这一节,还是给大家提供一些阅读链接。 因为关于单...

  • 微信小程序:rpx与px

    不同的移动设备有不同像素的宽高,如iPhone6:375px * 667px 微信小程序开发又涉及到另一个单位rp...

  • px、物理像素、rem、rpx的关系

    在开发中,我们常用的几个尺寸的单位,就是px,rem,微信小程序中会用到rpx,可能你不理解它们的关系也能用起来,...

  • 小程序 rpx和px转换

    小程序虽然建议使用 rpx 布局,但是通过wx API 获取到的 size、offset 等参数实际是 px 值。...

  • 全栈开发工程师微信小程序-上(中)

    全栈开发工程师微信小程序-上(中) 750rpx代表与屏幕等宽,rpx的缩写responsive pixel,这个...

网友评论

      本文标题:sass-rpx 微信小程序开发 px -> rpx 转换

      本文链接:https://www.haomeiwen.com/subject/qulmbttx.html