在经历了无数天的摸索、编码和调试之后,今天终于将我的个人生活小屋——“樱华小屋”成功搭建完毕了!
长久以来,我一直想要做一个个性的个人主页。现在网络上的个人博客或单页系统,大多千篇一律地使用现代的扁平设计(Flat Design)或者经典的卡片拼贴,看久了未免让人有些审美疲劳。我希望这间小屋能有它独特的个性——它是温暖的、可触摸的,同时又有着二次元的浪漫与灵性。
最终,我决定尝试将“新拟物化设计(Soft-UI)”与日系动漫的粉色樱花风做一次深度的跨界碰撞。
拟物化(Skeuomorphism)注重仿真,通过金属、木纹、皮革的纹理来模仿实体。而新拟物化(Neumorphism)则更加温润和抽象,它将阴影拉长,通过精准的双阴影(亮部白色阴影与暗部粉灰阴影)计算,让界面元素看起来像是从大背景中“凸”出来或者“凹”下去的浮雕板。
为了调出完美的粉色投影,我没有使用生硬的纯灰色,而是提取了带着暖樱粉色调的微偏暗影(`#E5C2C8`)来作为暗阴影,这让界面的亮暗过渡极为丝滑、温润,没有脏灰感。
除了静态的凸凹感,网站还引入了自定义的贝塞尔缓冲曲线(`cubic-bezier(0.175, 0.885, 0.32, 1.275)`)。
在这条曲线的作用下,所有的悬停、点击都会带来轻微的“物理回弹”——就好像我们按在一个柔软的橡胶果冻按钮上一样。
还有最令我中意的黑胶唱片播放器小组件,拨动唱针的动作和光盘旋转的淡入淡出,都是我写了多版 JavaScript 特意调出来的。
为了突出动漫感,我在网页底层利用 Canvas 绘制了一个轻量而高效的落樱引擎,还写了风向阻尼衰减算法。鼠标滑动在屏幕上会留下一缕无形的“风”,花瓣会顺着这股气流加速打转,随后渐渐归于徐徐东风的平缓状态。
在加载完成的一刹那,障子拉门分裂开来,伴随着漫天的樱花碎瓣,那种被网页迎接的感觉,真的让我感到了编程与美学交融的无限快乐。这里就是我存放热爱的起点!