访问不同的CSS文件
我在我的_layout.cshtml页面上看到了: 这指向一个包含应用程序所有样式的css文件 我想创建另一个具有不同样式的css文件,并在视图中放置一个组合框、单选按钮等,以便用户可以选择样式a或样式B,如用户首选项 想象一个组合框:访问不同的CSS文件,css,asp.net-mvc,Css,Asp.net Mvc,我在我的_layout.cshtml页面上看到了: 这指向一个包含应用程序所有样式的css文件 我想创建另一个具有不同样式的css文件,并在视图中放置一个组合框、单选按钮等,以便用户可以选择样式a或样式B,如用户首选项 想象一个组合框: <select> <option value="default">Default Theme</option> <option value="light">Light Theme</optio
<select>
<option value="default">Default Theme</option>
<option value="light">Light Theme</option>
<option value="dark">Dark Theme</option>
<option value="silver">Silver Theme</option>
</select>
应用程序的最终样式是两个样式表的混合!我不想这样,我想在两者之间切换
有可能吗?我不是cshtml专家,但如果您可以加载jQuery,我会尝试以下方法:
<select id="styleSelect" onchange=changeStyle()>
<option value="default">Default Theme</option>
<option value="light">Light Theme</option>
<option value="dark">Dark Theme</option>
<option value="silver">Silver Theme</option>
</select>
然后在您的角色中包含此脚本
当然是。一点javascript是最简单的,可以吗?当然可以,你能告诉我怎么做吗?可能的重复:对不起,我不理解以下行:$'link[href=oldstylesheet.css]'.attr'href','default.css';。样式表正被@Styles.Render~/Content/css行引用
bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/site.css"));
bundles.Add(new StyleBundle("~/Content/css/dark").Include("~/Content/dark.css"));
<select id="styleSelect" onchange=changeStyle()>
<option value="default">Default Theme</option>
<option value="light">Light Theme</option>
<option value="dark">Dark Theme</option>
<option value="silver">Silver Theme</option>
</select>
<script>
function changeStyle(){
if($( "#styleSelect" ).val()=="default"){
$('link[href="oldstylesheet.css"]').attr('href','default.css');
}
if($( "#styleSelect" ).val()=="light"){
$('link[href="oldstylesheet.css"]').attr('href','light.css');
}
if($( "#styleSelect" ).val()=="dark"){
$('link[href="oldstylesheet.css"]').attr('href','dark.css');
}
if($( "#styleSelect" ).val()=="silver"){
$('link[href="oldstylesheet.css"]').attr('href','silver.css');
}
}
</script>