2011-02-11 36 views
1

我想寫一個組件,它將在不同的網站工作。問題是它繼承了網站的現有樣式表。這會在我的組件中造成巨大的混亂。強制CSS不能繼承任何屬性

我想知道是否有辦法強制它不繼承任何主站點的任何屬性。

歡迎任何建議。感謝您的時間。

UPDATE

我不能IFRAME內容。然後,我的組件將停止運行。

+0

如果沒有內嵌框架,您可能會被覆蓋覆蓋爲您的組件定義的所有CSS樣式。畢竟,繼承是它應該做的。這就是CSS中「C」的意義所在。 – nybbler 2011-02-11 05:20:12

回答

1

幾個想法:

  • 的iFrame的內容。這樣它就成了另一個網站的窗口......而不是網站本身。
  • 定義您自己的內聯樣式,這些樣式永遠不會被覆蓋。
  • 定義難以或不可能無意覆蓋的類名。不要使用像'content'或'article'這樣的通用術語...而是使用'myverydifficulttoconflictwithcssclassname'。你明白了。
+0

#2如果他在多個網站上不能很好地工作。他必須重置每個樣式定義上的每個屬性。 – 2011-02-11 05:08:33

1

您可以創建一個reset.css文件,其中每個元素的每個屬性設置爲與!important聲明的默認值,然後在你的真實風格總是使用!important,但是這是一個很大的黑客。如果您的「組件」正在插入其他站點,您是否考慮過iframes?你會得到你自己的CSS範圍。