我想改变,由于用户的选择在选择列表中的CSS文件:如何在主题之间切换?
<select>
<option>light</option>
<option>dark</option>
</select>
所以当选择光css文件将light.css当黑暗如此dark.css 并保存此coice在饼干管他呢 。 谢谢!
我想改变,由于用户的选择在选择列表中的CSS文件:如何在主题之间切换?
<select>
<option>light</option>
<option>dark</option>
</select>
所以当选择光css文件将light.css当黑暗如此dark.css 并保存此coice在饼干管他呢 。 谢谢!
您可以在样式表设置禁用属性,这将禁用样式表
说你有两个样式
<link rel="stylesheet" type="text/css" href="light-theme.css" id="light-theme"/>
<link rel="stylesheet" type="text/css" href="dark-theme.css" id="dark-theme"/>
您可以轻松地启用只是其中之一
function setTheme(theme) {
var themes = ["light-theme", "dark-theme"];
for (var i=0; i < themes.length; i++) {
var styleSheet = document.getElementById(themes[i]);
if (themes[i] == theme) {
styleSheet.removeAttribute("disabled");
} else {
styleSheet.setAttribute("disabled", "disabled");
}
}
}
见How to change and maintain multiple color themes at runtime with css?
你还是需要将它保存到cookie中,您可以提出另一个问题。
实现这一目标的最简单方法是勾上onchange
事件select
元素,并用它来设置你的<body>
元素上一个特定的主题级,造成其他款式以供您的应用样式。或者,您可以销毁样式表并重新加载一个样式表,但这是一个更高级的主题。
既然你标记这个问题php这也是值得一提的是,通常你只是做回发到服务器进行此,也改变一些会话/ Cookie数据,并基于该生成你的模板<head>
另一<link>
标签。
提到的两个选项都是解决问题的有效方法。
[你有什么尝试?](http://whathaveyoutried.com/) –
使用JavaScript来交替两个外部样式表。如果您遇到困难,请回复一个更具体的问题。 – meagar
http://stackoverflow.com/questions/9946593/how-to-change-and-maintain-multiple-color-themes-at-runtime-with-css/9946764#9946764 –