小程序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

相关推荐
Lsx-codeShare11 分钟前
Uniapp 安装安卓、IOS模拟器并调试
android·前端·javascript·ios·微信小程序·小程序·uni-app
爱上语文20 分钟前
Ajax入门程序
前端·javascript·css·ajax·html
涔溪2 小时前
css3移动端布局适配
前端·css·css3
博纳软云_小程序一站服务平台3 小时前
房屋出租出售预约系统支持微信小程序+H5+APP
微信小程序·小程序·微信公众平台
Citrus_733 小时前
【微信小程序】- 位置权限
微信小程序·小程序
paterWang5 小时前
小程序-基于java+SpringBoot+Vue的微信小程序养老院系统设计与实现
java·spring boot·小程序
汇匠源5 小时前
基于Java的小程序电商商城开源设计源码
java·小程序·springboot·团队开发·源代码管理
JSON_L6 小时前
小程序 - 个人简历页面
小程序
2301_8112743115 小时前
基于微信小程序的空巢老人健康管理系统
微信小程序·小程序
V+zmm1013416 小时前
外卖商城平台的微信小程序ssm+论文源码调试讲解
java·小程序·毕业设计·mvc·springboot