我正在尝试根据 https://www.inetsolution.com/blog/march-2010/css-style-switcher-a-quick-and-dirty-how-to 实现样式切换器. 但是只要我将 title=""添加到 css 链接,css 文件就不会加载到页面上,样式会回退到默认 Bootstrap 。 我的外部 css 文件添加在正文的底部。顺序是:
<link rel="stylesheet" href="css/bootstrap.min.css">
<style>
body {
padding-top: 50px;
padding-bottom: 0px;
}
</style>
<link rel="stylesheet" href="css/bootstrap-theme.min.css">
<link rel="stylesheet" href="css/my-styles.css">
<link rel="stylesheet" href="css/my-alternate-styles.css">
<link rel="stylesheet" href="fontello-xxxxxxxx/css/fontello.css">
有什么我想念的吗?
最佳答案
您可能做对了所有事情(除了一件事,见下文*),文章中的代码在应该使用直引号 '' ""时使用了弯引号 ‘' “”。
<a href=”#” onclick=”setActiveStyleSheet(‘default’); return false;”>Change style to default</a> <a href=”#” onclick=”setActiveStyleSheet(‘alternate’); return false;”>Change style to alternate</a>
因此,如果您复制并粘贴此部分,将无法正确解析。这是使用直引号的正确方法:
<a href="#" onclick="setActiveStyleSheet('default'); return false;">Change style to default</a> <a href="#" onclick="setActiveStyleSheet('alternate'); return false;">Change style to alternate</a>
查看此 PLUNKER而不是片段。由于涉及多个样式表,该代码段将不起作用。
SNIPPET(没有功能,请查看 PLUNKER。)
<!doctype html>
<html>
<head>
<link href='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css' rel='stylesheet'>
<link href='default.css' title='default' rel='stylesheet'>
<link href='alt.css' title='alt' rel='alternate stylesheet'>
<style>
body {
padding-top: 50px;
padding-bottom: 0px;
}
</style>
</head>
<body>
<section>
<p>TEST</p>
</section>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js'></script>
<script src='styleSwitcher.js'></script>
</body>
</html>
*
我注意到你说:
...my external css files are added at the bottom of the body...
您应该始终放置 <link>
在 <head>
里面.大多数情况下,JavaScript/jQuery 在执行任何操作之前需要加载实际的 DOM。因此,在大多数情况下,确保您的样式(<link>
和 <style>
)先行并进入 <head>
非常重要。 .
对于 <script>
, 最好将它们放在 <body>
的底部就在结束标记之前 </body>
.请参阅代码段和 PLUNKER例如 <link>
, <style>
, 和 <script>
布局。
关于javascript - Bootstrap 的 css 样式切换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41210996/