时间:2021-07-01 10:21:17 帮助过:8人阅读
背景
在 vue.js 下使用 stylus 实现 1 像素 border 边框,如果使用 css 样式属性
border-bottom
实现边框的话,在 PC 浏览器上面是一条 1 像素边框(1条细线),但是在移动设备上面 DPI 数值越大,屏幕越清晰。使用这个属性,在移动设备上会变成一条很粗的线。
实现方式
方式1: 伪类定位 + 缩放
1、首先在要画边框的元素上面定义一个伪类,这个是一个绝对定位的, 通过伪类画了一个 1 像素边框,定位到元素的下边,就是下边框
border-1px($color) position: relative &:after display: block position: absolute left: 0 bottom: 0 width: 100% border-top: 1px solid $color content: ' '
2、实现一个 class 对伪类做缩放。根据设备的最小 DPI ,根据比例对纵轴进行缩放。
@media (-webkit-min-device-pixel-ratio: 1.5),(min-device-pixel-ratio: 1.5) .border-1px &::after -webkit-transform: scaleY(0.7) transform: scaleY(0.7) @media (-webkit-min-device-pixel-ratio: 2),(min-device-pixel-ratio: 2) .border-1px &::after -webkit-transform: scaleY(0.5) transform: scaleY(0.5)
方式2 : 直接用 <div> 实现 border
相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
相关阅读:
ES6的set数据结构和map数据结构
ES6里关于数字新增判断详解
commonJS与es6规范的引入导出
以上就是如何在移动端做出1px边框的效果的详细内容,更多请关注Gxl网其它相关文章!