当前位置: 首页 > news >正文

用CSS画一条0.5px的线

上次面试前端被问到了这个问题,感觉有点懵懵的,我就回答了一个scaleY(0.5),这个是真的没想到,希望有需要的朋友可以去看看。随便记住一种就行。

1.第一种方式:通过缩放1px的线条实现视觉上的0.5px效果,兼容性较好。

.thin-line {
  position: relative;
}

.thin-line::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px; /* 初始高度1px */
  background: #000;
  transform: scaleY(0.5); /* 垂直缩放至0.5倍 */
  transform-origin: 0 0; /* 确保缩放基点正确 */
}

2.第二种方式:直接使用0.5px边框(现代浏览器)

.thin-border {
  border-bottom: 0.5px solid #000;
}

3.第三种方式:使用transform缩放(推荐) 结合媒体查询(适配高分辨率屏幕)

.thin-line::after {
  content: '';
  /* ...同方法1... */
}

/* 高分辨率设备直接使用0.5px */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .thin-line::after {
    border-bottom: 0.5px solid #000;
    transform: none; /* 禁用缩放 */
  }
}

4.第四种方式:线性渐变:创建极细渐变模拟线条,适合简单场景。

.thin-gradient {
  background: linear-gradient(to bottom, #000 50%, transparent 50%);
  height: 1px;
  transform: scaleY(0.5);
}

5.第五种方式:​box-shadow:利用微小阴影模拟线条。

.thin-shadow {
  box-shadow: 0 0.5px 0 #000;
}

相关文章:

  • Aim Robotics电动胶枪:机器人涂胶点胶的高效解决方案
  • 《算法篇:三数之和问题的两种解法》
  • 修改Flutter项目使用的JAVA版本
  • linux-文本处理命令(echo,cut,sort,uniq,wc,tr,grep)
  • oneinstack 部署 lamp/lnmp
  • MongoDB 自动化部署
  • 搞定python之二----数据类型和程序的控制结构
  • Spring Boot 项目中 `Query` 后缀对象的放置位置
  • 每天五分钟深度学习框架PyTorch:ResNet算法模型完成CAFIR十分类
  • 【Spring IOC/AOP】
  • 怎么用vscode 写 markdown 文档
  • 【社区投稿】深入再谈智能指针、AsRef引用与Borrow借用
  • springboot3 spring security+jwt实现接口权限验证实现
  • Vue动态修改页面的 title 浏览器页签名称
  • 数据结构--【顺序表与链表】笔记
  • 大白话JavaScript数据类型判断方法的原理与实践
  • python:“魔法“方法
  • HTML5 + Bootstrap5 网站底部代码实现与解析
  • CSS伸缩盒模型(弹性盒子)
  • 使用AI一步一步实现若依前端(8)
  • 淄博网站制作公司推广/杭州网站建设公司
  • 美国网站做调查赚钱可信吗/杭州网络
  • 手把手教你优化网站/2024年的新闻
  • 品牌网站制作流程/优化关键词的方法包括
  • h5源码网/淮安网站seo
  • 温州网站建设方案报价/百度竞价推广点击软件奔奔