美文网首页
移动端1px边框

移动端1px边框

作者: 一枚倔强的程序员 | 来源:发表于2019-07-23 14:58 被阅读0次

    为什么1px的边框在移动端上显示会比较粗呢?是因为不同的手机有不同的像素密度。物理像素:设备像素;设备独立像素:css像素(虚拟的);设备像素比:设备独立像素比=物理像素/设备独立像素;普通屏:就是一个设备独立像素等于一个物理像素;二倍屏:就是一个设备独立像素等于4个物理像素;三倍屏:就是一个设备独立像素等于9个物理像素;

    那怎么解决呢?看例子吧。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
            <title>border</title>
            <link rel="stylesheet" href="css/1pxBorder.css" />
        </head>
        <body>
            <div class="main">
                <ul>
                    <li class="fineBorder-before-all">移动端1px边框的处理方法</li>
                    <li class="fineBorder-before-top">移动端1px边框的处理方法</li>
                    <li class="fineBorder-before-right">移动端1px边框的处理方法</li>
                    <li class="fineBorder-before-bottom">移动端1px边框的处理方法</li>
                    <li class="fineBorder-before-left">移动端1px边框的处理方法</li>
                    <li class="ff9623-fineBorder-before-all">移动端1px边框的处理方法,有圆角</li>
                    <li class="border-width">移动端1px不做处理的边框</li>
                </ul>
            </div>
        </body>
    </html>
    
    ul {
        list-style: none;
        li {
            margin: 2.5rem;
        }
    }
    
    .fineBorder-before {
        content: "";
        display: block;
        -webkit-transform: scale(0.5);
        transform: scale(0.5);
        position: absolute;
        top: -50%;
        right: -50%;
        bottom: -50%;
        left: -50%;
    }
    
    .fineBorder-before-all {
        position: relative;
        &:before {
            @extend .fineBorder-before;
            border: 1px solid #f00;
        }
    }
    
    .ff9623-fineBorder-before-all {
        position: relative;
        &:before {
            @extend .fineBorder-before;
            border: 1px solid #ff9623;
            -moz-border-radius: 8px;
            -webkit-border-radius: 8px;
            -ms-border-radius: 8px;
            -o-border-radius: 8px;
            border-radius: 8px;
        }
    }
    
    .fineBorder-before-top {
        position: relative;
        &:before {
            @extend .fineBorder-before;
            border-top: 1px solid #f00;
        }
    }
    
    .fineBorder-before-bottom {
        position: relative;
        &:before {
            @extend .fineBorder-before;
            border-bottom: 1px solid #f00;
        }
    }
    
    .fineBorder-before-left {
        position: relative;
        &:before {
            @extend .fineBorder-before;
            border-left: 1px solid #f00;
        }
    }
    
    .fineBorder-before-right {
        position: relative;
        &:before {
            @extend .fineBorder-before;
            border-right: 1px solid #f00;
        }
    }
    
    .border-width {
        border: 1px solid #f00;
    }
    
    image.png

    相关文章

      网友评论

          本文标题:移动端1px边框

          本文链接:https://www.haomeiwen.com/subject/auvyxctx.html