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

相关推荐
hnxaoli3 小时前
win10程序(十六)通达信参数清洗器
开发语言·python·小程序·股票·炒股
CappuccinoRose3 小时前
CSS 语法学习文档(十九)
前端·css·属性·flex·grid·学习资源·格式化上下文
肖。354878709415 小时前
html中onclick误区,后续变量会更改怎么办?
android·java·javascript·css·html
用户57573033462415 小时前
🎨 CSS变量彻底指南:从入门到精通,99%的人不知道的动态样式魔法!
css
用户57573033462415 小时前
🎯 CSS 定位详解:从入门到面试通关
css
凯里欧文42715 小时前
🔥真正高级的前端,早就用这 10 个 CSS 特性干掉 80% 冗余代码
前端·css
吴声子夜歌16 小时前
小程序——项目结构
小程序
Never_Satisfied16 小时前
在HTML & CSS中,letter-spacing详解
前端·css·html
Never_Satisfied16 小时前
在HTML & CSS中,Animation 属性使用详解
前端·css·html
明月_清风16 小时前
告别视口依赖:Container Queries 开启响应式组件的“后媒体查询”时代
前端·css