給你的網站新增一箇中國新年燈籠掛件(網頁/部落格美化)
阿新 • • 發佈:2021-01-02
效果
預覽
![](https://img.796t.com/res/2021/01-02/12/1ea1af384368e285d7640f0724e7d971.png)
實際
![](https://img.796t.com/res/2021/01-02/12/0f3ad1833b8d645d2d35e9b78a831763.png)
使用
<body>
<!-- 在頁面最後引入 -->
<script src="https://cdn.jsdelivr.net/gh/fz6m/[email protected]/dist/china-lantern.min.js"></script>
</body>
實現
對於單個燈籠,我們採取以下節點結構:
<!-- 燈籠主 warpper ,用於 fixed 定位 -->
<div class= "lantern__warpper">
<!-- 燈籠核心 box ,渲染紅色橢圓形背景 -->
<div class="lantern__box">
<!-- 燈籠上吊線 line -->
<div class="lantern__line"></div>
<!-- 燈籠 box 內的黃色線 circle (外圍線) -->
<div class=" lantern__circle">
<!-- 燈籠 box 內的黃色線 ellipse (內圍線) -->
<div class="lantern__ellipse">
<!-- 燈籠 box 內的文字 -->
<div class="lantern__text">{textFirst}</div>
</div>
</div>
<!-- 燈籠吊尾 tail -->
<div class="lantern__tail">
<!-- 燈籠吊尾下部的方形部分 rect -->
<div class="lantern__rect"></div>
<!-- 燈籠吊尾的圓形節點 junction ,這裡使節點在 rect 之後會顯得層級更自然 -->
<div class="lantern__junction"></div>
</div>
</div>
</div>
相信看到節點設計後已經很一目瞭然了,這是一個純 css 設計的燈籠節點。
核心搖擺動畫:
$deg-swing: 8deg;
@keyframes lantern-swing {
0% {
transform: rotate(#{-$deg-swing});
}
100% {
transform: rotate(#{$deg-swing});
}
}
此外:
-
採用 scss 進行全動態設計,便於開發者只需要修改對應的變數值即可 diy 自己的燈籠樣式。
-
全自動構建流程,支援修改燈籠文字。
-
最好的打包與 tree shake + css hack 即開即用。
-
支援手機端適配。
專案
中國燈籠:fz6m / china-lantern
使用建議:每逢元旦和新春假期期間使用。
如果想了解更多打包的技術細節,可以參考學習 rollup 打包三部曲:
《 rollup2.3 構建工具/功能庫教程(一):從 babel7 到postcss8 》