Yasin

Yasin

如何画一条0.5px的线

1. transform: scaleY(0.5)(最常用)

.line {
  height: 1px;
  background: #000;
  transform: scaleY(0.5);
  transform-origin: 0 0;
}

原理:先画 1px,再缩小一半,视觉上是 0.5px。


2. pseudo element + scale(不影响布局)

.box {
  position: relative;
}

.box::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: #000;
  transform: scaleY(0.5);
  transform-origin: 0 0;
}

3. meta viewport 缩放(影响全局,慎用)

<meta name="viewport" content="width=device-width, initial-scale=0.5" />

4. box-shadow

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

部分浏览器支持亚像素 shadow。


方案对比

方案 兼容性 推荐度
scaleY(0.5) 最好 ✅ 首选
伪元素 + scale ✅ 推荐
box-shadow 一般 可用
viewport 缩放 影响全局 ❌ 不推荐

首选方案:伪元素 + scaleY(0.5),不影响布局且兼容性好。