美文网首页
如何画出小于1px的线

如何画出小于1px的线

作者: 漫卷0823 | 来源:发表于2018-11-07 17:26 被阅读0次

有一天产品经理告诉我App底部tab栏上边框太宽了,赶紧改窄一点。我想这个简单啊,改一下boder的宽度就OK了,结果我一看代码,border-top的宽度已经是1px了,这时如果将border的宽度设置为小于1px的值,浏览器还是当作1px来渲染。不会有任何效果。这时要不要告诉产品需求不合理,无法实现(想想还是算了吧,怕被打)。

这时只能想办法变通一下,于是我想到了css3中的transform属性,该属性允许我们对元素进行旋转、缩放、移动或倾斜。这里我就想通过缩放来实现绘制小于1px的线条。思路是将一个元素的边框设置为1px,再通过缩放达到将线条变窄的目的。

看下面的代码,我们给下面的三栏布局加分割线,左边的分割线设置边框为1px,右边线条使用缩放实现变窄的效果。

  • html代码
<section class="layout">
    <div class="left"></div>
    <div class="middle"></div>
    <div class="right"></div>
</section>
  • css代码
.layout{
    display: flex;
    height: 100%;
}
.left,.right,.middle{
    flex: 1;
}
.middle{
    border-left: 1px solid #000;
}
.right:before{
    content: "";
    height: 100%;
    display: inline-block;
    background-color: #000;
    width: 1px;
    transform: scaleX(0.5);
}
  • 效果如下


    如何画出小于1px的线

这里是绘制纵向的线条,所以我们使用X轴方向的缩放scaleX( ),如果你要绘制横向的超窄线条可以使用Y轴方向的缩放scaleY( )。如果你想绘制一条倾斜的超窄线条,要怎么实现呢?实现方式:先缩放绘制出X或Y轴方向上的超窄线条,再通过transform:rotate(angle)旋转一定的角度来达到倾斜的效果。

相关文章

  • 如何画出小于1px的线

    有一天产品经理告诉我App底部tab栏上边框太宽了,赶紧改窄一点。我想这个简单啊,改一下boder的宽度就OK了,...

  • H5-移动端小于1px的处理

    移动端小于1px的处理

  • .5px? Chrome 认为低于 12px 的中文对人类是不

    �chrome 下字体最小12px; 小于1px 的象素任然显示1px;

  • 如何画出干净、漂亮的线稿

    如果一幅好画的诞生,灵感是核心,那么线稿则是骨架,没有牢固的骨架,再多的灵感也终究无法跃然纸上。 我们常常会感叹:...

  • iOS 画线

    1.iOS画虚线边框layer.border 2.iOS画小于1px的细线 3.iOS 设置行距,并且计算有行距的...

  • 由mintui的cell组件引发的关于border1px的思考

    mintui中是使用线性渐变的方法达成视觉上小于1px的border。线性渐变属于图片数据类型,可以充当背景图,但...

  • 怎么画脸与皮肤颜色

    如何画脸 (1)根据辅助线绘制轮廓。 (2)在背部画出脸颊。 (3)以鼻子线为中心线在额头和眼睛上画前额。 (4)...

  • 人物素描怎么入门

    人物素描如何入门还是要从素描基础抓起: 首先学习线,也就是笔的运行。 顺手方向画出平行线,线的力度,长短基本一致。...

  • vue面试题第十三天

    @1移动端1px问题,为什么会有?如何解决? 在开发中,为什么移动端CSS里面写了1px,实际上看起来比1px粗;...

  • css

    取消轮廓线outline:0;outline:1px solide red; 防止文本域拖拽resize:none...

网友评论

      本文标题:如何画出小于1px的线

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