每個重複的 CSS 條紋圖樣都遵循同一個算術關係:可見的週期等於條紋寬度加上間距寬度,而 repeating-linear-gradient 會在漸層線的兩個方向上重新宣告最後一個顏色停止點的區段。
正是這個等式讓「批次」產生條紋得以實際可行。當元件類別的每個變體共用同一套輸入語法——一個以度數表示的角度、兩個六位數顏色,以及兩個像素寬度——只需轉動一個旋鈕就能產生一套全新的圖樣,而無須重建數學模型。CSS Stripes Generator 將每個輸入鎖定為單一格式,將結果序列化為一個 background-image 宣告,並在即時預覽中呈現同一個宣告,因此表單上讀到的內容就是複製到剪貼簿的內容。批次作業流程因此變成在代號清單上反覆執行同一個產生器,而非在樣式表中逐列手動微調。
本指南說明每個條紋圖樣重複套用的輸入規範、將產生器作為批次來源執行的步驟、背後驅動四個顏色停止點的週期數學,以及讓條紋背景在實際 UI 中保持可讀性的對比與動態檢查。

批次條紋產生實際能發揮作用的地方
手寫的條紋用於單一主視覺背景時沒什麼問題。但當設計系統需要的不只是少數幾個有圖樣的元件時,專用產生器的價值就出現了。特別是以下三種情境,會促使團隊採用批次方式。
- 狀態緞帶、表格列狀態,以及需要在許多元件之間共用視覺語法的圖表背景。
- 主題組合——亮色、暗色、高對比、品牌變體——共用幾何結構,但每次替換其中兩個顏色與一個寬度。
- 行銷版面與活動樣板,需要為短期的網頁產生數十個比例一致的背景樣式。
共同點在於:幾何詞彙是常數,變動落在其中一個或兩個數值輸入上。因此批次執行意味著只需宣告一次常數、將變體在產生器表單中循環跑過,再擷取每一行的 background-image。由於該宣告使用的是 background-image 而非 background 簡寫,因此單一批次輸出可以與同一個選擇器上既有的 background-color、background-size 或 background-position 並存,而不會重設它們——這個特性在條紋背景堆疊在其他圖層後面時立刻變得重要。
產生器在寫出宣告前會驗證的輸入
每個批次執行都會產生形狀相同的 CSS,因為產生器會將每個輸入限制在嚴格的格式之內。在同一個批次內混用格式會悄悄產生不一致的程式碼,因此值得在開始循環之前先弄清楚什麼才算有效輸入。
| 輸入 | 要求的格式 | 範圍或限制 |
|---|---|---|
| 角度 | CSS 度數,整數或小數 | 0°–360° |
| 條紋顏色 | 六位數十六進位 | 不可簡寫,不可含 alpha |
| 間距顏色 | 六位數十六進位 | 不可簡寫,不可含 alpha |
| 條紋寬度 | 像素長度,有限數值 | 1–200 px |
| 間距寬度 | 像素長度,有限數值 | 1–200 px |
任何超出表格規定的輸入都會回傳錯誤,而非產生不完整的宣告。空白欄位與 NaN 或 Infinity 等非有限值會被拒絕,以避免產生零長度的週期,否則漸層會塌陷成單色。兩個顏色都必須以完整的六位數十六進位表示(例如 #0ea5e9,而非 #0ea5e9ff),產生器刻意省略透明 alpha、三個以上的中間顏色、圓錐圖樣、放射狀圖樣、背景定位以及動畫——這些省略讓批次中的每一列都能逐行稽核。
產生兩色條紋圖樣的批次
將這個工具擴充為批次產生器的最快方式,就是讓大部分輸入保持不變,只在表單中循環單一維度,然後把每個通過驗證的宣告複製到你的代號表。以下順序可讓數學保持穩定,並讓你直接把輸出貼入 CSS 變數區塊或 JSON 代號匯出。
- 固定常數。挑選由兩個六位數十六進位顏色組成的調色盤,以及一個每個變體都要共用的度數角度。在產生器表單中鎖定這些值,這樣每一列只會改變變動的維度。
- 循環選定的變數。在兩個像素寬度或角度中選一個,透過一組小範圍的值來變化——例如間距寬度為 5、8、12、16——並逐一送出每個組合。固定其中一個寬度、同時掃描另一個寬度,能產生最可預測的週期推進。
- 擷取每個宣告。每次成功送出後,直接從面板複製 background-image 那行。預覽已經使用同一個宣告,所以看到什麼就是擷取到什麼。
- 在目標容器上檢查幾何結果。以實際產品尺寸與縮放比例開啟來源元件——而不是獨立的預覽。對角條紋在水平與垂直螢幕軸向上的投影不同,沿著漸層線量測的像素數,與沿著螢幕橫向量測的同樣像素數並不相同。
- 將像素字面值提升為代號。在合併之前,把字面顏色與寬度替換為設計系統中的變數(例如 --stripe-color-primary 或 --stripe-gap-md)。產生器不會編輯下游的代號,所以這最後一步由你完成。
如果你的批次需要的不只是寥寥幾列,可以在試算表中進行各步驟,列出變動維度,然後沿著清單逐列重新整理表單並複製每一列。每一列都是確定且可稽核的。
週期數學與四個停止點的硬邊緣清單
一旦掌握週期公式,批次執行中的每個變體都只是單一代入。CSS Stripes Generator 會將兩個色帶寬度相加來回報一個圖樣週期,再序列化出四個明確的顏色停止點,避免瀏覽器將一個色帶混入下一個。
輸入與停止點之間的關係直接,值得釐清:
- 週期 = 條紋寬度 + 間距寬度。
- 停止點 1:條紋顏色位於 0px。
- 停止點 2:條紋顏色位於條紋寬度處——相同顏色、相同位置重複。
- 停止點 3:間距顏色位於條紋寬度處——相同位置、顏色改變。
- 停止點 4:間距顏色位於週期處。
以具體數值演練:
- 角度:45deg
- 條紋寬度:10px
- 間距寬度:5px
- 條紋顏色:#0ea5e9
- 間距顏色:#f8fafc
- 週期:10 + 5 = 15px
- 停止點(依序):#0ea5e9 0px、#0ea5e9 10px、#f8fafc 10px、#f8fafc 15px
輸出宣告:
background-image: repeating-linear-gradient(45deg, #0ea5e9 0px, #0ea5e9 10px, #f8fafc 10px, #f8fafc 15px);
相同停止點位置的設計,正是讓顏色從一個直接切換到另一個,而非在兩個色帶之間留下混合區域的原因。產生器會在漸層線的兩個方向上重複同一個圖樣,這正是單一宣告能將一個小週期平鋪到更大表面的原理——也是批次產生值得投入的價值所在。
對比、摩爾紋與動態安全檢查
批次條紋組合會放大任何品質問題,因為每個變體都承載著相同的幾何決策。以下三項檢查可確保批次結果誠實可靠。
跨越每個邊界的對比。產生器不會量測圖樣上的文字對比——這是刻意的,因為每個條紋邊緣都會造成對比變化。任何一列若將長段文字直接放在強烈圖樣之上,都應加入實心覆蓋層或獨立的閱讀區塊,然後在整個閱讀區域驗證對比。
小尺寸下的摩爾紋與閃爍。落在 1–200 像素範圍下緣的條紋寬度,可能會產生摩爾紋、捲動時的閃爍,或在瀏覽器縮放與截圖下出現不穩定的外觀。如果批次中的某列需要視覺穩定性,請把兩個寬度其中之一從非常小的值調高,並重新拍攝預覽。
大色帶會失去重複感。200 像素的上限有其道理:非常大的色帶可能不再被讀為重複圖樣,這代表設計師預期的視覺節奏已不復存在。請在鎖定該列之前,以實際產品尺寸檢視來源元件。
圖樣本身也帶有狀態訊號的風險——切勿僅以條紋方向或顏色作為傳達意義的唯一方式。請測試強制色彩模式、暗色主題、瀏覽器縮放、列印、截圖以及減少動畫偏好;靜態的裝飾性圖樣通常比動畫版本更安全、也更清楚。
條紋背景破壞版面的時機
即使批次執行本身乾淨,整合階段仍可能出錯。以下兩種失敗模式出現的頻率足以在批次產生條紋的任何設計系統中佔有一條專屬規則。
多個背景圖層。產生器輸出的 background-image 而非簡寫,因此既有的 background-color、background-size 與 background-position 會保持不變。當帶有圖樣的元件同時具有備援顏色時,這是較安全的預設;但這也代表,一個已經堆疊了兩個 background-image 圖層的元件,需要特別留意逗號順序:在以逗號分隔的清單末端新加入的條紋宣告,會成為前景圖層而非基底圖層。
響應式尺寸。沿著漸層線的像素寬度不會隨容器寬度縮放。在 320 像素寬下平鋪得乾淨俐落的對角圖樣,到了 1440 像素可能呈現不同的節奏,因為每塊瓷磚在螢幕上大小相同,但橫向投影仍會隨選定的角度而改變。請將每個條紋代號與同一元件尺寸下的圓角或陰影代號配對——例如,讓每個變體對齊到一個協調的從圓角產生器複製而來的圓角代號,讓元件變體在整個批次中保持視覺一致。
這套工作流程中的一切都在目前的分頁中運作:沒有上傳、沒有儲存、沒有登入,也沒有額外的相依套件。你複製到的宣告就是產生器所預覽的宣告,因此你送出的批次輸出與你審核過的批次輸出完全相同。
規格參考
以下兩份規格為本文使用的 repeating-linear-gradient 行為奠定基礎:
- W3C CSS Images Level 3 — repeating gradients 定義最後一個顏色停止點區段沿著漸層線平鋪的行為。
- MDN repeating-linear-gradient 參考 記錄產生器所輸出的角度與顏色停止點語法。