1px问题:
方案/优缺点 | 兼容性 | 颜色 | 圆角 | 总结 |
---|---|---|---|---|
0.5px 边框 | 无法兼容安卓设备、 iOS 8 以下设备 | 支付 | 支持 | 简单,不需要过多代码 |
使用 border-image | 无 | 修改颜色麻烦,需要替换图片 | 圆角需要特殊处理,并且边缘会模糊 | 可以设置单条,多条边框,且没有性能瓶颈的问题 |
使用background-image实现 | 无 | 修改颜色麻烦, 需要替换图片 | 圆角需要特殊处理,并且边缘会模糊 | 可以设置单条,多条边框,没有性能瓶颈的问题 |
多背景渐变实现 | 多背景图片有兼容性问题 | 支持 | 不支持 | 可以实现单条、多条边框,边框的颜色随意设置,但是代码量不少 |
使用 box-shadow 模拟边框 | 无 | 边框有阴影,颜色变浅 | 支持 | 代码里少,可以满足所有场景 |
viewport + rem 实现 | 无 | 支持 | 支持 | 所有场景都能满足,一套代码,可以兼容基本所有布局,但是老项目修改代价过大,只适用于新项目 |
伪类 + transform 实现 | 无 | 支持 | 支持(伪类和本体类都需要加border-radius) | 所有场景都能满足,对于已经使用伪类的元素(例如clearfix),可能需要多层嵌套 |
移动端适配方案
https://blog.youkuaiyun.com/chenjuan1993/article/details/81710022
参考:https://blog.youkuaiyun.com/weixin_34318272/article/details/88747150