我創建了一個網站,我想允許個性化的個人用戶高達如改變字體,背景顏色一定程度上的問題等。這樣做的問題是,我載入我的默認CSS文件已經默認一切的類。現在當我從我的數據庫中獲取背景顏色,那麼如果有背景顏色的空值,那麼應該加載默認的css類mystylesheet.css,如果值不爲空,那麼我想用我的默認CSS來覆蓋它。這怎麼可能?感謝提前:)初學者的關於CSS
回答
負載的風格標籤的默認stylesheat,並把你的動態之後的風格標籤中的樣式。
哪種樣式時,不同的風格定位相同元素由特異性決定的,而如果選擇是相同的,按順序使用。使用最後找到的樣式。
+1:我打算說同樣的事情,但服務器重置並失去了我的迴應。 – Robusto 2010-04-27 17:49:35
一種方法是從一個PHP腳本動態生成CSS文件。
你會包括像文件:
<link rel="stylesheet" type="text/css" href="css.php">
而且css.php文件看起來是這樣的:
<?php
header('Content-type: text/css');
// whatever you want to ouput depending on the user
?>
zaf提到的方法會要求您在要切換樣式表時重新加載頁面。我覺得這是一個更好的方法是一個類名補充人體 如果你有使用JavaScript
<body class="theme-1">
<div class="main"><div>
</body>
然後每個樣式表應該包含在聲明的主題名稱的選項:
--theme1.css
.theme-1 div.main {
background-color: #eee
}
--theme2.css
.theme-2 div.main {
background-color: #f30
}
要切換樣式表,只需刪除舊的主題名稱並添加要使用的主題。
然後,您甚至可以動態添加樣式表,如果您爲用戶提供界面以自定義頁面的外觀和感覺。
改進的新答案:
我剛剛發現在ExtJS的鄉親實現一個很好的解決方案。它涉及使用<鏈接>標籤加載所有想要的樣式表。訣竅是你可以在鏈接元素上設置一個禁用屬性,這會導致它不適用。
舉一個例子,使用Firebug看看
http://www.extjs.com/deploy/dev/examples/themes/index.html
查找styleswitcher。js並看看函數setActiveStyleSheet
function setActiveStyleSheet(title) {
var i,
a,
links = document.getElementsByTagName("link"),
len = links.length;
for (i = 0; i < len; i++) {
a = links[i];
if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
a.disabled = true;
if (a.getAttribute("title") == title) a.disabled = false;
}
}
}
- 1. 關於SQlite關係的初學者
- 2. 改裝初學者關於POJO的
- 3. 初學者關於django-viewflow的問題
- 4. 關於e.Item.ItemIndex的初學者問題
- 5. 關於python multiprocessing的初學者問題?
- 6. 關於初學者程序的難題
- 7. 的CSS重點初學者
- 8. 關於JDBC初學者教程
- 9. 有關Java初學者
- 10. 學習WinAPI的 - 對於初學者
- 11. HTML/CSS初學者 - divs的定位
- 12. 一些初學者的有關MongoDB的
- 13. 有關printf,java的初學者問題
- 14. CakePHP的初學者 - MVC關係
- 15. 2初學者有關C++的問題
- 16. 初學者的.htaccess問題(笨相關)
- 17. CakePHP初學者
- 18. Asp.net初學者
- 19. 初學者
- 20. Hadoop初學者
- 21. twitterbootstrap:初學者
- 22. 初學者
- 23. Android初學者
- 24. Prolog初學者
- 25. PROLOG初學者
- 26. 初學者QuickBlox
- 27. Javascript初學者
- 28. CodeIgniter的初學者
- 29. 初學者的Firebase
- 30. Prolog的初學者
你在用什麼來做抓取?可能有幾十種不同的服務器端語言可以用於此目的,所以請編輯您的問題,因爲PHP,C#和Java都是可以用於此目的的可能語言。其次,你的數據庫使用什麼語言來編程返回值? – 2010-04-27 17:33:42
我按照你的說法編輯了 – TCM 2010-04-27 17:39:18