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

相关推荐
2501_916007474 小时前
网站爬虫原理,基于浏览器点击行为还原可接口请求
前端·javascript·爬虫·ios·小程序·uni-app·iphone
奔跑的呱呱牛7 小时前
CSS Grid 布局参数详解(超细化版)+ 中文注释 Demo
前端·css·grid
一匹电信狗8 小时前
【Linux我做主】进程程序替换和exec函数族
linux·运维·服务器·c++·ubuntu·小程序·开源
我是伪码农12 小时前
HTML和CSS复习
前端·css·html
阿珊和她的猫12 小时前
以用户为中心的前端性能指标解析
前端·javascript·css
_耀北13 小时前
用 Canvas + CSS 打造“会呼吸”的天气卡片(附源码可复制)
前端·css
牧码岛13 小时前
Web前端之样式中的light-dark函数,从媒体查询到颜色函数,从颜色到图片,light-dark打开CSS新时代、主题切换的暗黑模式到image的正解
前端·css·web·web前端
woshinon15 小时前
【Uniapp(HBuilderX)针对微信小程序和H5平台实现差异化配置(自定义发行)】
微信小程序·小程序·uni-app
hashiqimiya15 小时前
微信小程序---textarea组件布局
微信小程序·小程序
ZC跨境爬虫17 小时前
CSS核心知识点与定位实战全解析(结合Playwright爬虫案例)
前端·css·爬虫