欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

css如何做出0.5像素的线条

程序员文章站 2022-03-31 11:41:27
...
这次给大家带来css如何做出0.5像素的线条,css做出0.5像素线条的注意事项有哪些,下面就是实战案例,一起来看一下。

公司的设计师在做设计图的时候都是以iphone6(宽为750物理像素)为基准进行设计的。iphone6的设备像素比(即css像素与物理像素的比例)是2,所以设计师在设计图画了边框为1px的box的时候,相对于css代码来说就是0.5像素。

对于这个问题,最直观的方法就是css直接设置边框为0.5px,经过测试,iPhone可以正常显示,android下几乎所有的浏览器都会把0.5识别为0,即无边框状态,所以这种方式行不通

CSS3有缩放的属性,我们可以利用这个属性,缩小50%的1px的边框,来实现这个功能,具体实现代码如下

<p class="border3">
    <p class="content">伪类设置的边框</p>
</p>

css:

.border3{
     position: relative;          
 }
 
.border3:before{
       content: '';
       position: absolute;
       width: 200%;
       height: 200%;
       border: 1px solid red;
       -webkit-transform-origin: 0 0;
       -moz-transform-origin: 0 0;
       -ms-transform-origin: 0 0;
       -o-transform-origin: 0 0;
       transform-origin: 0 0;
       -webkit-transform: scale(0.5, 0.5);
       -ms-transform: scale(0.5, 0.5);
       -o-transform: scale(0.5, 0.5);
       transform: scale(0.5, 0.5);
       -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
       box-sizing: border-box;
}

实现思路:

1、设定目标元素的参考位置

2、给目标元素添加一个伪元素before或者after,并设置绝对定位

3、给伪元素添加1px的边框

4、用box-sizing: border-box 属性把边框都包进宽和高里面

5、宽和高设置为 200%

6、整个盒子模型缩小为0.5

7、调整盒子模型的位置,以左上角为基准 transform-origin: 0 0;

实现结果在iphone显示如下:

css如何做出0.5像素的线条

相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!

推荐阅读:

css3的pointer-events使用详解

focus-within的使用详解

以上就是css如何做出0.5像素的线条的详细内容,更多请关注其它相关文章!