掃描
納入或排除原始檔與特定 class 名稱。
本頁目錄
檔案政策決定從哪裡讀取候選項;候選政策決定哪些完整 class 字串仍可使用。這些指令不會改變剖析器,也不會將任意來源文字轉成有效 utility。設定與疑難排解請見掃描 class 名稱,支援的來源語法與生命週期請見擷取。
檔案選擇與候選選擇是不同篩選
排除 draft.html 會阻止其 flex 候選項進入此來源範圍。封鎖 hidden 是在收集後移除候選;安全清單的 block 則加入明確候選。
文字說明
- @source 納入 HTML 檔案,@source not 排除 draft.html。只有 main.html 提供 grid 與 hidden class 字串。
- @safelist "block" 不依賴來源檔案,直接加入完整候選項。
- @blocklist "hidden" 移除該候選項。可用集合最後為 grid 與 block;flex 從未進入此範圍。
- 檔案與候選政策彼此分開。具備候選資格不代表任意 class 字串都有效;一般比對與診斷仍會套用。
@source
一般應用程式來源使用整合與 CLI 的預設探索方式。需要時再加入明確例外:
@source "../content/**/*.mdx";@source not
從來源集合排除符合的檔案:
@source not "../content/drafts/**";{a,b} 這類大括號群組會展開為各別模式;單一模式最多包含 64 組大括號,且最多展開為 1,024 個模式。
所有納入項先取聯集,再扣除所有排除項。每個相對模式都以宣告它的樣式表為基準解析,包含裸 src/**、./src/**、匯入檔案與 @source not。參照不會提供掃描來源。
解析檔案的 API 必須提供宣告檔案或明確的基準檔案。僅檢查來源指令的操作可回傳未解析中繼資料,但不得自行虛構檔案系統基準。掃描器程式 API 的 cwd 選項,對直接透過該 API 傳入的掃描選項維持既有意義。
@safelist
加入無法以字面形式出現在掃描來源中的完整 class 候選項:
@safelist "(opacity:1)";@safelist "bg-blue-60@dark";候選項採用與探索到的 class 相同的比對與診斷政策。請讓動態選項保持有限且明確。
若要保留具名動畫定義,又不生成 class 或動畫宣告,請使用明確的 keyframes 目標:
@safelist keyframes "fade" "pop";每個引號字串是一個完整 CSS 動畫名稱。名稱區分大小寫並支援 CSS 跳脫;字串內的空白是名稱的一部分。不會展開萬用字元或分割 class。缺少名稱、未加引號的名稱、逗號與巢狀安全清單指令都會造成錯誤。名稱若不存在於完整匯入/參照圖,會產生警告。安全清單在各入口圖內合併,並在來源或指令移除時撤回。@reference 不會匯入安全清單根節點。沒有關鍵影格封鎖清單,也沒有獨立的關鍵影格修剪/保留目標。
@blocklist
使用完整字串,或 *、? 萬用字元模式,移除不需要的完整候選項:
@blocklist "debug-*";@blocklist "example-token";樣式表語法不會將斜線包住的模式解讀為正規表示式。萬用字元政策屬於封鎖清單;安全清單提供的是完整 class。

