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

相关推荐
ZC跨境爬虫13 小时前
跟着 MDN 学 HTML day_8:(高级文本语义标签+适配核心功底)
前端·css·笔记·ui·html
里欧跑得慢1 天前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
凯瑟琳.奥古斯特1 天前
Redis是什么及核心特性
前端·css·redis·缓存
DFT计算杂谈1 天前
VASP官方教程 TRIQS DFT+DMFT计算教程
运维·css·自动化·html·css3
可达鸭小栈1 天前
易语言实现CSS像素文字生成器:无需字体文件渲染汉字
前端·css
yqcoder1 天前
CSS 迷思破解:`:nth-child` vs `:nth-of-type`
前端·css
遇见~未来1 天前
第六篇_CSS进阶_深入浏览器与工程化
前端·css·rust
cosinmz1 天前
图片太多太乱怎么整理?分享一个我最近常用的图片转 PDF方法
经验分享·小程序·pdf
xingpanvip1 天前
星盘接口开发文档:日运语料接口指南
android·开发语言·前端·css·php·lua
科技互联.1 天前
2026年小程序定制市场:个性化需求激增,技术深度成竞争关键
人工智能·小程序