<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>图库 · Domal</title>
    <link>https://domal.cc/tags/%E5%9B%BE%E5%BA%93/</link>
    <description>Domal</description>
    <generator>Hugo -- gohugo.io</generator>
    <atom:link href="https://domal.cc/tags/%E5%9B%BE%E5%BA%93/" rel="self" type="application/rss+xml" />
    
    <item>
      <title>时间轴设想</title>
      <link>https://domal.cc/thinking/%E6%97%B6%E9%97%B4%E8%BD%B4%E8%AE%BE%E6%83%B3/</link>
      <pubDate>Wed, 12 Aug 2026 18:00:00 &#43;0800</pubDate>
      
      <guid>https://domal.cc/thinking/%E6%97%B6%E9%97%B4%E8%BD%B4%E8%AE%BE%E6%83%B3/</guid>
      <description>&amp;lt;p&amp;gt;阿里技术大事记时间轴 Html 复刻方案&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;h1 id=&amp;#34;html可视化时间轴复刻实践分享&amp;#34;&amp;gt;HTML可视化时间轴复刻实践分享&amp;lt;/h1&amp;gt;&amp;#xA;&amp;lt;h2 id=&amp;#34;一开发背景&amp;#34;&amp;gt;一、开发背景&amp;lt;/h2&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;偶然看到一款双层分流式技术大事记时间轴设计图，整体曲线脉络、上下分层事件卡片、竖排年份标注的视觉形式表现力很强，适合用来展示企业多年技术发展里程碑，于是决定使用原生 HTML/CSS/SVG 进行页面复刻。&amp;#xA;本次复刻没有做到像素级一比一还原，但视觉结构、分层逻辑、矢量绘图核心效果已高度贴近原图，仍有细节优化空间。&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;&amp;lt;img src=&amp;#34;https://p11-flow-imagex-sign.byteimg.com/tos-cn-i-a9rns2rl98/10e40536619141a89e0c5a47fc93f760.png~tplv-a9rns2rl98-image-qvalue.image?lk3s=8e244e95&amp;amp;amp;rcl=20260813145004D0DEFD984F0C6ACA93F1&amp;amp;amp;rrcfp=1860f75c&amp;amp;amp;x-expires=1787208604&amp;amp;amp;x-signature=yk9IF6ByhAkzGsI9pbhdKBPpLoU%3D&amp;#34; alt=&amp;#34;参考&amp;#34;&amp;gt;&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;h2 id=&amp;#34;二整体技术选型&amp;#34;&amp;gt;二、整体技术选型&amp;lt;/h2&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;整体采用&amp;lt;strong&amp;gt;无第三方依赖原生前端方案&amp;lt;/strong&amp;gt;，轻量化、可直接在浏览器打开运行，适配大屏展示场景：&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;ol&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;HTML5&amp;lt;/strong&amp;gt;：语义化结构承载标题、年份事件卡片，划分上下两层事件轨道；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;CSS3&amp;lt;/strong&amp;gt;：变量管理主题色、绝对定位布局、文字竖排、响应式横向滚动、多层元素层级控制；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;&amp;lt;strong&amp;gt;原生 SVG&amp;lt;/strong&amp;gt;：绘制全部时间主线、分支连接线、节点圆点，矢量图形放大不失真；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;不引入 JS、图片、外部样式表，所有逻辑与视觉全部内联在单文件中，打包、分发、使用更便捷。&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;/ol&amp;gt;&amp;#xA;&amp;lt;h2 id=&amp;#34;三复刻过程中的核心难点与解决方案&amp;#34;&amp;gt;三、复刻过程中的核心难点与解决方案&amp;lt;/h2&amp;gt;&amp;#xA;&amp;lt;h3 id=&amp;#34;1-多层曲线时间脉络绘制svg难点&amp;#34;&amp;gt;1. 多层曲线时间脉络绘制（SVG难点）&amp;lt;/h3&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;难点&amp;#34;&amp;gt;难点&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;原图时间轴并非单一直线，是多条交错弯折的折线路径，同时区分主视觉蓝线与灰色辅助线；每条年份节点需要垂直连线连接上下事件卡片，还要区分普通节点与终点标识圆点，手动编写路径坐标极易错位。&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;解决方案&amp;#34;&amp;gt;解决方案&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;ul&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;分层编写 &amp;lt;code&amp;gt;&amp;amp;lt;path&amp;amp;gt;&amp;lt;/code&amp;gt;，区分 &amp;lt;code&amp;gt;.blue&amp;lt;/code&amp;gt; 主线、&amp;lt;code&amp;gt;.thin&amp;lt;/code&amp;gt; 细蓝辅助线、&amp;lt;code&amp;gt;.grey&amp;lt;/code&amp;gt; 灰色分层线，视觉层次和原图对齐；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;统一规划节点坐标，先标记所有年份对应圆点位置，再批量编写垂直连接线，保证卡片和主线一一对应；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;用两类 &amp;lt;code&amp;gt;circle&amp;lt;/code&amp;gt; 区分普通节点与蓝色终点圆点，强化视觉收尾。&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;/ul&amp;gt;&amp;#xA;&amp;lt;h3 id=&amp;#34;2-上下双层事件卡片定位排版&amp;#34;&amp;gt;2. 上下双层事件卡片定位排版&amp;lt;/h3&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;难点-1&amp;#34;&amp;gt;难点&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;设计分为 &amp;lt;code&amp;gt;top&amp;lt;/code&amp;gt; 上层、&amp;lt;code&amp;gt;bottom&amp;lt;/code&amp;gt; 下层两条事件流，同年份可同时存在上下两条记录；所有卡片使用绝对定位，坐标偏移细微就会出现文字重叠、年份文字和主线脱节；竖排年份文字需要紧贴节点左侧，排版容错率极低。&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;解决方案-1&amp;#34;&amp;gt;解决方案&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;ul&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;区分 &amp;lt;code&amp;gt;.entry.top&amp;lt;/code&amp;gt; / &amp;lt;code&amp;gt;.entry.bottom&amp;lt;/code&amp;gt; 两套定位规则，分别控制上下卡片距离主线的间距；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;单独为竖排年份 &amp;lt;code&amp;gt;.year&amp;lt;/code&amp;gt; 设置 &amp;lt;code&amp;gt;writing-mode: vertical-rl&amp;lt;/code&amp;gt;，独立层级不遮挡正文；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;多轮视觉校正微调 left、bottom/top 坐标，新增多组修正样式，避免卡片互相遮挡；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;为不同长度文案的卡片设置差异化固定宽度，防止文字溢出错乱。&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;/ul&amp;gt;&amp;#xA;&amp;lt;h3 id=&amp;#34;3-主题色彩统一管理与样式复用&amp;#34;&amp;gt;3. 主题色彩统一管理与样式复用&amp;lt;/h3&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;难点-2&amp;#34;&amp;gt;难点&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;页面多处复用深蓝主色、浅蓝标注色、灰色辅助线，分散写颜色值后期修改成本极高；页面包含标题、年份、正文、标记文字多种字号，样式零散难以维护。&amp;lt;/p&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;解决方案-2&amp;#34;&amp;gt;解决方案&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;ul&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;使用 CSS &amp;lt;code&amp;gt;:root&amp;lt;/code&amp;gt; 定义全局颜色变量 &amp;lt;code&amp;gt;--blue&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;--sky&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;--ink&amp;lt;/code&amp;gt;/&amp;lt;code&amp;gt;--line&amp;lt;/code&amp;gt;，全局一处修改即可更换整套配色；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;统一封装 &amp;lt;code&amp;gt;.mark&amp;lt;/code&amp;gt; 标记类，用于突出飞天FT3等核心项目标识；&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;li&amp;gt;层级分层控制 z-index：SVG底层曲线 → 年份文字层 → 事件卡片正文，解决元素遮挡问题。&amp;lt;/li&amp;gt;&amp;#xA;&amp;lt;/ul&amp;gt;&amp;#xA;&amp;lt;h3 id=&amp;#34;4-宽幅画布适配与滚动兼容&amp;#34;&amp;gt;4. 宽幅画布适配与滚动兼容&amp;lt;/h3&amp;gt;&amp;#xA;&amp;lt;h4 id=&amp;#34;难点-3&amp;#34;&amp;gt;难点&amp;lt;/h4&amp;gt;&amp;#xA;&amp;lt;p&amp;gt;完整时间轴画布宽度超过常规屏幕尺寸，直接展示会裁切右侧年份事件；窄屏设备无法完整浏览全部时间线。&amp;lt;/p&amp;gt;</description>
    </item>
    
  </channel>
</rss>