Skip to content

pantoken / flatten-property

flatten-property

Beta(測試)

@pantoken/plugin-flatten-property — 將 @property at-rules 轉換為純自訂屬性宣告。

@property at-rules 使用 syntaxinheritsinitial-value 描述子來註冊型別化的 CSS 自訂屬性。它們會帶來顯著的位元組額外負擔——每個屬性約有 60 bytes 的樣板——而且當樣式表是自包含的捆綁檔,型別註冊在執行時並無益處時就不是必要的。此外掛會把每個 @property 區塊替換成放在選定選擇器內的簡單 --name: value 宣告,回收所有那些額外開銷。

語意註記: 移除 @property 會失去 CSS 型別註冊。型別化的過渡/動畫、@starting-style,以及 CSS Typed OM 都依賴此註冊。僅在那些不需要這些語意的捆綁檔上套用。

範例

ts
import postcss from "postcss";
import { flattenProperty } from "@pantoken/plugin-flatten-property";
const out = postcss([flattenProperty()]).process(css, { from: undefined }).css;

介面

變數