· 1 分鐘閱讀
如何用一行 CSS 做到 smooth-scroll
# 前端正當我開開心心用 svelte 實作了 smooth-scroll 之後,我發現其實可以用一行 CSS 達到:
html {
scroll-behavior: smooth;
}
除了瀏覽器支援可能要擔心一下,完全省掉開發者引入 library 或是自己實作的麻煩。

完美達成 smooth-scroll,不需要再透過改寫 hashchange 跟 state change 的行為。改天再寫一篇文章談談要怎麼不用 CSS 做到 smooth-scroll 好了。
相關文章
- 前端使用圖片時需要注意的事從 Jake Archibald 的文章延伸,整理現代響應式圖片應該怎麼寫:為什麼 width/height 還是要加、什麼時候用 CSS aspect-ratio、AVIF 跟 WebP 怎麼選,以及用 picture/source/srcset 處理手機版圖片切換。
- CSS field-sizing — 用一行 CSS 讓表單元素自動調整大小textarea 自動調整高度,以前只能靠 JavaScript 監聽 scrollHeight。CSS field-sizing: content 一行就能取代,支援 textarea、input、select。本文整理舊做法的痛點與 field-sizing 的用法。
- 讓你的超連結底線更好看:text-underline-offset預設的情況下底線跟文字很接近,有些設計師不喜歡這種樣式,我自己也覺得沒有很好看。
- 為什麼網頁不應該追求 Pixel Perfect只有在 Pixel Perfect 很重要的時候才應該關注他,否則往往會讓你得到一個雙輸的局面。