文件

含部落格的個人頁

多頁式個人網站(首頁、作品集、部落格、文章),以 PDRenderKit 1.2.0 組合片段,含 JS 瀑布流與 Markdown 檢視器。

概要

項目 內容
製作日期 2023-06-21
分類 部落格範例
HTML 檔案 index.html, portfolio.html, blog.html, blog-content.html, view/nav.html, view/header.html, view/portfolio.html, view/service.html, view/about.html, view/skill.html, view/client.html, view/contact.html, view/footer.html, view/blog-content.html
原始碼 target/20230621

即時預覽

在新分頁開啟範例

頁面區塊

區塊 說明
導覽列(view/nav.html) sticky 導覽列,品牌連結與 :for 渲染的 HOME / PORTFOLIO / BLOG;800px 以下由漢堡 @click=tab 開關選單。
主視覺(view/header.html) 標題、副標與 GitHub / LinkedIn 按鈕,含進場動畫。
作品集(view/portfolio.html) 依頁面全域 ary(首頁 8 筆、portfolio.html 24 筆)產生的 JS 瀑布流佔位圖,並自動建立 ALL/TAG1/TAG2/TAG3 篩選分頁。
服務(view/service.html) 以 :for 依圖示名稱渲染 6 個項目,class 使用插值 fa-{{ e }}。
關於(view/about.html) 照片搭配 image/about.svg 裝飾、自介與兩組 3 項時間軸。
技能(view/skill.html) 8 個圓餅指標,:year 值 1..8 隨機排序,進場時播放動畫。
客戶評價(view/client.html) 5 張評價卡的橫向循環輪播,附前後按鈕。
聯絡(view/contact.html) :model 表單(名稱、Email、訊息)以 @click=send 跳出 alert,旁為嵌入的 Google 地圖 iframe。
頁尾(view/footer.html) 版權與 :for 圖示連結(GitHub、LinkedIn、Mail)。
部落格列表(blog.html) 雙欄:作者卡、8 篇連到 blog-content.html 的文章、上下頁;側欄含搜尋、最新 4 篇、主題與標籤;行動版底部浮動搜尋列。
文章頁(blog-content.html + view/blog-content.html) 文章標題、details/summary 索引、以 PDMarkdownKit viewer 顯示 PDMarkdownKit README、上下篇連結與相同側欄。

互動行為

相依資源

名稱 版本 來源
Font Awesome Free 6.5.2 https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.5.2/css/all.min.css
PDRenderKit 1.2.0 https://cdn.jsdelivr.net/npm/pdrenderkit@1.2.0/dist/PDRenderKit.js
PDMarkdownKit (ES module, blog pages) 1.6.0 https://cdn.jsdelivr.net/npm/pdmarkdownkit@1.6.0/dist/PDMarkdownKit.module.js
Google Maps embed iframe - https://www.google.com/maps/embed?pb=...
Google Analytics (gtag.js) - https://www.googletagmanager.com/gtag/js?id=G-L5VYEZPVXX
js/index.js (index.html, portfolio.html) - ./js/index.js
js/blog.js (blog.html, blog-content.html) - ./js/blog.js (type=module)

樣式

項目 內容
SCSS 入口 sass/index.scss
輸出 CSS css/index.css
Partials function/_hsbTohsl.scss, _init.scss, _nav.scss, _header.scss, _blog.scss, _portfolio.scss, _service.scss, _about.scss, _skill.scss, _client.scss, _contact.scss, _footer.scss, animation/_section-3.scss, animation/_pie.scss, animation/_bg-move.scss

function/_hsbTohsl 定義 HSB 轉 HSL 的 hsb()/hsba() SCSS 函式;_init 含 reset、斷點變數($_800: 50rem 等)與 HSB 推導色階(brand/success/notify/error/info/border)。index.scss 定義全域 .at/.delay/[done] 進場效果(::after 漸層擦除)與旋轉 a.hint 浮水印。_skill @import animation/_pie 並以 @for 依 [done][year] 旋轉圓餅;_blog 涵蓋列表/文章/sticky 側欄、details 索引與 .float-bottom;_client 處理 [row] 版面。animation/_bg-move 存在但未被 import。inline <style> 設定 --col-brand-5 #f1c50e 與 --gradient-col。

cd target/20230621
npx sass sass/index.scss css/index.css --no-source-map || exit 1

使用技巧

外部資源

相關頁面

EN