小程序1rpx边框不完美

问题展示

原因

rpx类似rem,渲染后实际转换成px之后可能存在小数,在不同的设备上多多少少会存在渲染的问题。而1rpx的问题就更加明显,因为不足1个物理像素的话,在IOS会进行四舍五入,而安卓好像统一向上取整,这也是上面两种设备表现不同的原因

解决方法

我们采用的方法是采用translate:scale(0.5)的方法对边框进行缩放

css 复制代码
.select-box{
  position: relative;
  border-width: 0rpx !important;
  padding: 0.5rpx;
  z-index: 0;
}
.select-box::after{
  box-sizing: border-box !important;
  position: absolute;
  border-width: 2rpx !important;
  left: 0;
  top: 0;
  width: 200% !important;
  height: 200% !important;
  transform-origin: 0 0;
  transform: scale(0.5) !important;
  z-index: -1;
}
  • 给.select-box的元素设置边框宽度为0
  • 给::after伪元素宽高为两倍,边框设置2rpx,
  • 边框其他样式继承元素的设置
  • 然后再缩放0.5来达到边框为1rpx的效果

题外话

border: 1rpx solid #ccc = border-width、border-style、border-color

相关推荐
毕设源码-朱学姐8 小时前
【开题答辩全过程】以 基于微信小程序的大学生安全素质综合培养平台设计与实现为例,包含答辩的问题和答案
微信小程序·小程序
Amumu121389 小时前
CSS简介
前端·css
潆润千川科技11 小时前
中老年垂直社交小程序产品功能对比与设计思路分析
小程序
木风未来11 小时前
解锁自然新可能:露营租赁小程序如何让轻量化户外触手可及
小程序
木风未来14 小时前
破解家政维修信任困局:一个小程序如何让家庭服务更透明、更高效
小程序
温轻舟16 小时前
前端可视化大屏【附源码】
前端·javascript·css·html·可视化·可视化大屏·温轻舟
Java.慈祥16 小时前
速通-微信小程序 5Day
java·微信小程序·小程序·npm
糖糖TANG16 小时前
学成在线 案例练习
前端·css
说私域17 小时前
数字围城下的防御与突围:基于私域流量与智能名片商城小程序的用户关系重构研究
小程序·重构·流量运营·私域运营
1314lay_100717 小时前
color: var(--el-color-success); CSS里面使用函数
前端·css