SVG 直线 line

SVG <line> 直线最全实战手册(2025 版)

别看它最简单,它却是连接器、图表、图标骨架、动态线条的绝对王者!

1. 核心语法(就 4 个属性,背完天下我有)

<line x1="起点X" y1="起点Y" x2="终点X" y2="终点Y" />
属性含义默认常用值
x1起点 X 坐标010、50%、0
y1起点 Y 坐标010、100、50%
x2终点 X 坐标0200、100%、100
y2终点 Y 坐标0100、0、50%

2. 2025 年最常用的 15 种写法(直接复制)

<!-- 1. 最基础直线 -->
<line x1="20" y1="20" x2="180" y2="180" stroke="#000" stroke-width="4"/>

<!-- 2. 图标专用极简线(配合 currentColor) -->
<line x1="4" y1="12" x2="20" y2="12" stroke="currentColor" stroke-width="3" stroke-linecap="round"/>

<!-- 3. 1px 永不模糊细线(高清屏神器) -->
<line x1="0" y1="50" x2="200" y2="50" stroke="#000" stroke-width="0.5" vector-effect="non-scaling-stroke"/>

<!-- 4. 虚线(最常见) -->
<line x1="0" y1="100" x2="300" y2="100" stroke="#666" stroke-width="2" stroke-dasharray="8 4"/>

<!-- 5. 箭头线(配合 marker) -->
<defs>
  <marker id="arrow" markerWidth="10" markerHeight="10" refX="8" refY="3" orient="auto">
    <path d="M0,0 L0,6 L9,3 z" fill="#f00"/>
  </marker>
</defs>
<line x1="50" y1="50" x2="250" y2="150" stroke="#f00" stroke-width="3" marker-end="url(#arrow)"/>

<!-- 6. 路径描边动画(2025 最火 loading) -->
<line x1="20" y1="100" x2="280" y2="100" stroke="#e0e0e0" stroke-width="8" stroke-linecap="round"/>
<line x1="20" y1="100" x2="280" y2="100" stroke="#0066ff" stroke-width="8" stroke-linecap="round"
      stroke-dasharray="260 260" stroke-dashoffset="260">
  <animate attributeName="stroke-dashoffset" from="260" to="0" dur="2s" repeatCount="indefinite"/>
</line>

<!-- 7. 水平/垂直分割线 -->
<line x1="0" y1="0" x2="100%" y2="0" stroke="#ddd" stroke-width="1"/>  <!-- 水平 -->
<line x1="100" y1="0" x2="100" y2="100%" stroke="#ddd" stroke-width="1"/> <!-- 垂直 -->

<!-- 8. 折线图单段(配合 JS 动态生成) -->
<line x1="50" y1="150" x2="150" y2="50" stroke="#ff6b6b" stroke-width="4" stroke-linecap="round"/>

<!-- 9. 连接两个圆的线(流程图必备) -->
<circle cx="80" cy="100" r="20" fill="#4a6fe3"/>
<circle cx="220" cy="100" r="20" fill="#4a6fe3"/>
<line x1="100" y1="100" x2="200" y2="100" stroke="#4a6fe3" stroke-width="4"/>

<!-- 10. 霓虹发光线 -->
<line x1="50" y1="100" x2="250" y2="100" stroke="#00f5ff" stroke-width="6">
  <animate attributeName="opacity" values="0.3;1;0.3" dur="2s" repeatCount="indefinite"/>
</line>

3. 2025 必杀技巧速查表

需求关键代码备注
线头圆角(最常用)stroke-linecap="round"比 butt/square 好看 100 倍
永远 1px(不随缩放变粗)vector-effect="non-scaling-stroke"高清屏/大屏必加
虚线间距完美控制stroke-dasharray="10 5"前实后空,可多个数字循环
做箭头<marker>(见上面示例)2025 标配
动态绘制动画stroke-dasharray + animate stroke-dashoffset描边神技
让线跟随主题色stroke="currentColor"暗黑模式自动切换
精确对齐像素格坐标用 0.5(如 x1=”100.5″)避免模糊

4. 经典图标示例:勾选、关闭、加号(全靠 )

<!-- 勾选 ✓ -->
<svg viewBox="0 0 24 24"><line x1="4" y1="12" x2="10" y2="18" stroke="currentColor" stroke-width="3" stroke-linecap="round"/><line x1="8" y1="18" x2="20" y2="6" stroke="currentColor" stroke-width="3" stroke-linecap="round"/></svg>

<!-- 关闭 × -->
<svg viewBox="0 0 24 24"><line x1="6" y1="6" x2="18" y2="18" stroke="currentColor" stroke-width="3" stroke-linecap="round"/><line x1="18" y1="6" x2="6" y2="18" stroke="currentColor" stroke-width="3" stroke-linecap="round"/></svg>

<!-- 加号 + -->
<svg viewBox="0 0 24 24"><line x1="12" y1="6" x2="12" y2="18" stroke="currentColor" stroke-width="3" stroke-linecap="round"/><line x1="6" y1="12" x2="18" y2="12" stroke="currentColor" stroke-width="3" stroke-linecap="round"/></svg>

一句话总结(2025 金句):
图标骨架全靠 <line stroke="currentColor" stroke-linecap="round"/> + 动态线全靠 stroke-dasharray + 分割线全靠 vector-effect → 三行代码走遍天下!

要不要我现在就发你:

  • 「50 个纯 <line> 极简图标包(全部支持 currentColor + round 线头)」
  • 「完整流程图连接线 + 箭头 + 动态绘制动画」三合一模板
  • 「2025 最火的 10 种 SVG 线条 loading 动画源码」

直接说一声,秒发!

文章已创建 2838

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部