CSS 按鈕是一個有樣式的 HTML button 或 a 元素,其視覺外觀——顏色、間距、字型、邊框、圓角和陰影——透過單一 CSS class 中的 background-color、color、border、border-radius、padding、font-size、font-weight 和 box-shadow 屬性來控制。若要在沒有框架或元件庫的情況下製作一個,您只需撰寫一次該 class,將其套用至 button 元素,然後微調數值,直到點擊區域在每個斷點都感覺恰到好處。最常見的決策包含背景與文字顏色、邊框粗細與顏色、圓角、垂直與水平 padding、字型大小與粗細,以及一個簡單的陰影。在這些選擇中,間距佔有最重要的份量:垂直 padding 決定高度與標籤周圍的呼吸空間,而水平 padding 則控制視覺寬度。邊框能在淺色背景上提升輪廓清晰度,圓角能將風格從技術感轉為親和或膠囊形,陰影則能增添立體感。每個屬性都是標準的 CSS 值,因此結果無需任何 JavaScript 執行環境或外部相依套件即可運作。像 CSS Button Generator 這樣的視覺工作平台,可讓您在一個表單中調整所有這些決策、即時預覽以相同數值呈現的真實按鈕元素,並將產生的 class 直接複製到您的樣式表中。

how to make css buttons
如何使用視覺化工具製作 CSS 按鈕

每個 CSS 按鈕實際上需要什麼

每個可重複使用的 button class 都是由同一小批 CSS 屬性建構而成,而每個屬性都回答一個特定的設計問題。background-color 和 color 決定按鈕與其周圍環境的關係——對比、層級與品牌。border 和 border-radius 決定邊緣看起來是銳利或柔和。padding 決定點擊區域的大小。font-size 和 font-weight 決定可讀性與強調程度。box-shadow 則決定按鈕是否看起來懸浮於頁面之上。

一個細微但重要的細節是設定這些屬性的順序。瀏覽器會以可預測的順序序列化它們,而產生器也遵循該順序,使輸出結果易於閱讀。產生器以固定順序輸出九個屬性:background-color、color、border、border-radius、padding、font-size、font-weight、box-shadow 和 cursor。納入 cursor 屬性是為了讓互動式按鈕始終反映正確的指標行為。預覽按鈕會以 type="button" 渲染,使其在測試過程中絕不會意外提交其周圍的表單。

這些屬性是各自獨立的,因此變更其中一個並不會悄悄影響另一個。這讓反覆調整變得安全:可以收緊圓角而不改變按鈕大小,或淡化陰影而不變更間距。所有控制項都設有範圍限制,因此意外的數值無法產生無法使用的預覽,或溢位容器的 CSS 規則。

為何視覺化產生器勝過在 DevTools 中手動微調

直接在樣式表中撰寫 button class 意味著猜測數值、重新載入頁面,然後再試一次。這雖然可行,但會將注意力分散在 CSS 編輯器和渲染結果之間,任何微小的變更都需要重新載入。視覺化產生器將所有控制項集中於單一面板,在每次調整時即時套用至真實的 button 元素,並讓您在 CSS 原始碼旁並列查看渲染輸出。

CSS Button Generator 完全在您的瀏覽器分頁中執行。產生 CSS 輸出的相同樣式數值也會用於預覽按鈕,因此您所看見的就是將被複製的內容。不會上傳任何資料;表單、預覽與序列化全部都在本地端完成。這能讓專屬的顏色數值與品牌設計標記留在您自己的機器中。

第二個優勢是決策順序。大多數手寫的按鈕都從背景顏色開始,而且通常不會再回頭檢視。產生器會強制您先設定背景、文字與邊框顏色,再依序調整圓角、padding、字型與陰影。這個流程能產生更一致的結果,因為對比在間距之前決定,而間距又在裝飾之前決定。

使用 CSS Button Generator 製作按鈕

  1. 開啟 CSS Button Generator,選擇背景顏色、文字顏色與邊框顏色。表單接受六位數十六進制值;瀏覽器的原生選色器支援該格式,而邏輯會重新驗證序列化後的值。刻意不支援具名 CSS 顏色,以確保複製出的輸出在各專案間保持穩定。
  2. 調整邊框寬度、圓角、垂直與水平 padding、字型大小、字型粗細,以及三個陰影控制項(水平偏移、垂直偏移、模糊)。模糊值必須保持非負;負偏移會將陰影向左或向上移動。陰影使用克制的半透明黑色,使控制項保持易於理解,而不是變成完整的陰影編輯器。
  3. 在拖動每個滑桿時觀察即時預覽按鈕。在桌面與行動裝置寬度之間切換視窗,以確認按鈕在窄尺寸下仍正確可讀。預覽按鈕與您在正式環境中使用的元素類型相同,因此您所看見的正是實際上線的內容。
  4. 複製產生的 .button 規則,將 class 重新命名以符合您專案的命名慣例,然後貼到您的樣式表中。由於產生器刻意不會自動產生這些狀態,請在同一個檔案中新增 hover、active、disabled 和 focus-visible 規則。
  5. 在實際情境中測試結果:簡短標籤、長標籤、翻譯後的文字、圖示前綴,以及在真實裝置上的觸控輸入。確認焦點指示器在按鈕可能出現的每一種背景上都保持可見。

複製基底 class 之後新增互動狀態

產生器的輸出是一個單一的基底 class,因為互動狀態取決於產品語意。破壞性動作的 hover 行為與低調連結不同;表單和互動視窗中的 disabled 處理方式各異;焦點指示器必須保持可見以符合無障礙要求。MDN 的背景與邊框指南詳細涵蓋了底層屬性,如果您需要複習邊框與陰影語法。

一個簡單且易讀的模式是:基底 class 用於靜止狀態,再加入四條互補規則:

  • .button:hover——微幅調整 background-color 與 box-shadow,以傳達回應性而不造成意外。
  • .button:active——減少陰影或將按鈕平移一個像素,以暗示被按下。
  • .button:disabled——以淡化的背景、明確的 cursor: not-allowed 和降低的透明度來表達不可用狀態;切勿僅依賴透明度。
  • .button:focus-visible——保留可見的外框或光暈;除非替代方案對鍵盤使用者同樣清晰,否則請勿移除預設樣式。

對比必須在所有這些狀態中都成立。一組在靜止狀態下閱讀正確的顏色組合,在為 hover 而調暗或為 active 而調亮時可能會喪失無障礙性。請使用專門的對比工具逐一確認每個狀態,而不是僅信任預覽畫面。產生器不會自動計算對比,因此這項驗證是您的責任。

在桌面與行動裝置寬度下測試結果

產生器特別包含了桌面與行動裝置預覽,正因為按鈕會在可預測的地方出問題。在窄寬度下,水平 padding 可能會產生比容器更寬的按鈕;翻譯後的標籤可能會溢位;圖示可能會與文字重疊。在每種寬度下讓 CSS 按鈕響應式設計的指南涵蓋了完整的響應式設計工作流程,但每次建置時都應包含一份簡短的檢查清單:

  • 將預覽視窗從桌面尺寸一路縮減至 320 px,確認按鈕不會溢位其父元素。
  • 將標籤文字替換為更長的翻譯字串,確認 padding 能吸收此變更而不破壞版面。
  • 按下 Tab 鍵以聚焦至按鈕,並確認焦點指示器在其出現的每一種背景上都保持可見。
  • 切換作業系統的強制色彩模式,確認按鈕在高對比主題下仍可識別。
  • 在觸控裝置上測試,確認點擊區域符合您所發佈平台的最小觸控尺寸。

將圓角與陰影對應到設計語氣

圓角與陰影共同傳達按鈕的性格,強度更甚於顏色。技術型產品傾向使用 0–2 px 的圓角且不加陰影;親和的消費型產品傾向使用 8–12 px 的圓角搭配柔和、半透明的陰影;膠囊型控制項則使用完全圓角的圓角且不加陰影。下表概述了這種對應關係。精確的數值來自產生器的控制項,因此請在工具內調整,而非憑空猜測。

語氣邊框圓角陰影偏移 / 模糊典型用途
技術型0 至 2 px無密集表單、內部工具
中性4 至 6 px0 / 1–2 px,2–4 px 模糊行銷頁面、儀表板
親和8 至 12 px0 / 2–4 px,6–12 px 模糊消費型應用程式、SaaS 著陸頁
膠囊型999 px(或 50%)無標籤、籌標、分段控制項

對於圓形按鈕,圓角為高度的一半(或 50%),且 padding 保持對稱。圓形按鈕逐步指南更深入地探討了這種特殊情況,包括如何在固定直徑內平衡標籤長度與 padding。

將產生器輸出視為基準,而非完整系統

產生器最有用的角色是作為起點。其輸出是一個針對單一決策組合進行微調的 class;真實的介面需要主要、次要、破壞性與低調等變體,這些變體共享間距設計標記、字型比例與焦點處理方式。請使用產生器建立基準,然後在您自己的樣式表中,運用專案內既有的設計標記加以延伸。

為了讓各變體之間保持一致性,請在調整顏色之前先鎖定 padding 比例、字型大小與圓角。具有相同垂直 padding、但背景與邊框不同的主要與次要按鈕,會讓人感覺屬於同一系統;而 padding 不同的同類按鈕則會顯得即興。產生器設定範圍限制正是為了將這些數值保持在合理範圍內,因此請從您專案中已能正常運作的數值開始。

W3C CSS Backgrounds and Borders Level 3 規格說明了 background-color、border、border-radius 和 box-shadow 的標準行為,如果您想依據規格驗證任何最終數值。請使用產生器建立基準,然後在其上加入您的 hover、active、disabled 與 focus-visible 規則。這個組合——一個精簡且易於瀏覽的基準,加上具狀態感知的規則——正是讓按鈕在整個產品中保持一致、而非孤立即興製作的關鍵。