我正在使用MVC/Razor/.Net/C#,我希望允許用戶更改站點的主題,就像您可以在Microsoft Windows中更改主題一樣。mvc razor允許用戶選擇自己的主題css
有誰知道如何,或者,可以指向我的方向一些很好的教程/例子。
乾杯
我正在使用MVC/Razor/.Net/C#,我希望允許用戶更改站點的主題,就像您可以在Microsoft Windows中更改主題一樣。mvc razor允許用戶選擇自己的主題css
有誰知道如何,或者,可以指向我的方向一些很好的教程/例子。
乾杯
通常這個功能與多個CSS文件實現,具有很少(或沒有用.NET做)。
您應該以語義的方式設計您的HTML,以便通過更改CSS文件,整個輸出與應用的每個CSS都不相同。
這個鏈接給出了一個更說明介紹入主題 - >http://www.thesitewizard.com/css/switch-alternate-css-styles.shtml
之後你這樣做,你需要在你的應用程序做什麼是存儲(什麼皮膚)在會話什麼的用戶偏好像這樣,並相應地更改CSS文件。
Asp.Net WebForms使用皮膚/主題功能,但我認爲它已被棄用(它不是很好),我也看到一個實現,而不是HTML開發人員使用XML和XSLT文件來呈現意見(這也是我的口味太複雜)。
這是一個非常非常寬泛的問題,有很多正確的方法。
您可以創建一個基本控制器,用於在每次請求期間從數據庫加載用戶所選的CSS主題名稱。然後,你可以把這個值放到ViewBag
(或ViewData
),並在您的視圖中引用它:
<head>
@{
var themeName = ViewBag.ThemeName;
}
@if (String.IsNullOrWhiteSpace(themeName)) {
themeName = "default";
}
<link href="@Url.Content(String.Format("~/themes/{0}.css", themeName))" type="text/stylesheet" />
</head>
隨着MVC它實際上確實有事情做與.NET。這點很重要。 –
我想明確的是,MVC沒有任何特定的東西可以幫助您將主題/多種樣式應用於您的應用程序。這個問題是技術不可知的,同樣的方法適用於不同的語言和平臺。 – tucaz
Cheers @tucaz將會遵循所提供的鏈接並接受您的反饋。 – Tappies