"写这个页面的时候,我正在听一首关于旅行的歌。突然想,能不能用代码做一扇窗——推开它,就能随机遇见一座城?"

—— 来自 春日花园博客 的深夜实验室


一、这是什么?

一个轻到可以嵌入任何网页的城市卡片组件。

打开它,24座城市会像塔罗牌一样随机浮现。没有广告,没有加载条,没有让你填表注册的弹窗。只有一张卡片,一段文案,和一座城想对你说的话。

国内12城 + 国外12城,每一座都被我写了专属的 slogan 和简介。

北京 · "一座城,半部中国史"
成都 · "少不入川,慢得理直气壮"
巴黎 · "光之城,浪漫的代名词"
开普敦 · "山海之间的明珠"
……

它不是攻略,是一封封从远方寄来的明信片。


二、为什么做这个?

说实话,起因挺私人的。

上个月深夜改代码,耳机里放着《旅行的意义》,突然就很想去一个完全陌生的地方。但打开旅行App,满屏的机票酒店促销,反而让人更疲惫。

我想做的,是一个让人"慢下来"的东西。

不用规划行程,不用比价,甚至不用真的出发。只是在一个普通的夜晚,随机翻到一座城,读一段关于它的文字,想象那里的空气和光线——这种想象本身,就是一种微小的逃离。

于是有了「城市名片」。


三、设计细节:我藏了一些小心思

🌫️ 视觉|雾感与呼吸感

背景是深邃的靛蓝渐变,三枚模糊气泡缓缓漂浮。卡片采用毛玻璃质感,边缘柔和得像旧相册里抽出的相片。

支持亮/暗主题切换——白昼明亮如阳光穿透玻璃幕墙,入夜后化作霓虹倒映在雨夜车窗。

🎴 交互|翻牌即命运

点击"换一张名片",卡片会以弹性动画翻转弹出。你可以手动翻阅,也可以让它自动流转。

收藏功能是我最喜欢的设计。点击♡,那座城就被你标记了。它不会提醒你、不会推送通知,只是安静地躺在那里——像一颗埋在心底的种子。

🖋️ 文案|每座城都是一个人

写文案的时候,我一直在想:如果这座城市是一个人,它会怎样介绍自己?

重庆不会说自己是"网红打卡地",它说:"8D魔幻山城,火锅即正义。轻轨穿楼而过,立交层层叠叠。江雾里的洪崖洞像极了千与千寻,辣得过瘾,也错得迷人。"

丽江不会罗列景点,它说:"慢下来的古城,走心的远方。玉龙雪山下,古城的石板路被岁月磨得发亮。酒吧里的民谣,是旅人写给自己的情书。"

数据是冷的,但记忆是热的。 我希望每张卡片都能唤起你对某座城的想象,哪怕你从未去过。


四、技术|轻到没有存在感

表格

特性

说明

零依赖

纯 HTML/CSS/JS,没有 React、没有 Vue,打开即用

响应式

手机上是掌心的城市,电脑上是桌面的风景

内联资源

图片以 Base64 嵌入,不因外链失效而破碎

开箱即用

改改 JSON 就能换成其他主题:书店、咖啡馆、独立音乐人……

最动人的技术,是让你感受不到技术的存在。


五、你可以这样用它

作为决策工具
假期不知道去哪?让它帮你随机决定——命运选的,错了也浪漫。

作为礼物
把这个页面发给朋友,说:"送你一座城。"


六、来,翻一张牌

城市名片 · 遇见下一座城

每一次刷新,都是一场说走就走的相遇。

👉点击体验

https://www.ty2c.com/gocity.html


(建议手机打开,单手握持,像刷卡片一样翻阅)

你今天遇见了哪座城? 欢迎在评论区告诉我。如果抽到了拉萨,记得先让心适应高原;如果抽到了巴黎,记得为浪漫预留一个黄昏。


关于作者
我是 春日花园博客 的站长,一个相信"代码可以承载情绪"的前端开发者。这个页面会持续更新——如果你有自己的城市记忆想分享,欢迎留言,也许下一版里会多一张你写的卡片。

愿你遇见的每一座城,都能在某个深夜里,回以温柔。 🌙


— 本文由 春日花园博客 原创出品,转载请联系授权 —