2011-07-24 83 views
1

可以在Firefox中使用nsIStyleSheetService加載並註冊樣式表,其中以與userstyle.css類似的方式應用;它們適用於每個加載的頁面。但是,此服務需要sheetURI,這是一個指向要包含爲樣式表的靜態文件的URI。添加到Firefox的樣式表的動態生成?

有沒有一種方法可以在Javascript中實際生成此樣式表而不是實時?或者會有另一個接口讓我註冊一個JS回調來輸出所需的樣式表來申請,而不是表單URI?

+0

你不能使用數據鏈接呢? – Gerben

+0

@Gerben您能否詳細說明這個解決方案,最好是作爲對問題的回答? – Jez

回答

1

在JS中生成CSS,然後使用base64對其進行編碼並加上data:text/css;base64,
然後,將其用作URI。

例如:body{background:red;}
變爲:data:text/css;base64,Ym9keXtiYWNrZ3JvdW5kOnJlZDt9

+0

啊,這將允許JS註冊工作表來註冊它剛剛生成的內容,因此它將是動態的!得到它了。我會盡力的,謝謝! – Jez

+0

它工作完美。謝謝。 :-) – Jez

相關問題