我有一个需要自定义的网站,这意味着我需要根据用户选择的选项来更改页面的主题。我需要知道如何根据用户选择更改通过Layout.cshtml呈现的css文件。
这是我的layout.cshtml中的两个CSS文件
@ Styles.Render(“〜/ Content / style1.css”)->主题1 @ Styles.Render(“〜/ Content / style2.css”)->主题2
我已分配了两个链接以单击以更改主页中的css文件(链接1-主题1,链接2-主题2),但我不知道如何更改它。
我最初的想法是有两个链接,当按下链接时,它将被发送到控制器,从layout.cshtml中选择适当的css文件后,它将根据该用户重定向到页面,具体取决于用户使用if条件进行的选择,我想这个主意是不可能的。
请让我知道执行此操作的最佳方法,因为我需要尽快在我的网站中实施此解决方案。
您可以使用一个查询字符串参数来设置whichStyleFlavor
:
@{
string whichStyleFlavor = "1";
... some logic to check what they requested and change whichStyleFlavor
}
@Styles.Render("~/Content/style" + whichStyleFlavor + ".css")
或者,您可以通过切换CSS标签在客户端上执行此操作。
从这里:
<link id="pagestyle" rel="stylesheet" type="text/css" href="default.css">
<script type="text/javascript">
function swapStyleSheet(sheet){
document.getElementById('pagestyle').setAttribute('href', sheet);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句