在一个html文件中使用多个CSS样式表

时间:2010-01-05 20:07:38

标签: javascript html css dreamweaver

对于我的一个作业,我必须制作两个不同的CSS样式表,我已经完成了。现在在作业中它说如果我想我可以将两个样式表链接到一个html页面,所以我猜测将有两个选项在两种样式之间切换。 我的问题:我如何实现这一目标?我听说有一些java涉及,我还需要创建按钮还是下拉菜单,以便显示选项?

如果你不明白我想说的话,这是一个例子: http://adactio.com/。在底部你可以选择更改主题,但我不介意只有两个按钮。

提前致谢。

5 个答案:

答案 0 :(得分:5)

如果没有对服务器的请求,您的示例不会更改页面样式,因此它不是您可能想要的。我认为你的教授询问了“替代”样式表,可以从网络浏览器中选择。

<link rel="stylesheet" type="text/css" href="std.css" title="standard skin" />
<link rel="alternate stylesheet" type="text/css" href="alt.css" title="alternate skin" />

在您的文档标题中使用此代码,您可以选择用于样式的样式表,并且可以在没有php,cgi或其他服务器端技术的情况下进行更改。

http://www.w3.org/Style/Examples/007/alternatives了解更多信息。

注意:

  

最初加载文档时,会将持久性和首选样式表应用于文档。然后,用户可以选择备用样式表。 W3C告诉我们浏览器应该让我们选择我们想要使用的样式表,并建议可能会提供一个下拉菜单或工具栏。

(来自http://www.alistapart.com/articles/alternate/

答案 1 :(得分:0)

尝试在Google中查找“样式表切换器”。

他们在课堂上教给你了吗?我认为这种技术会出现在你的教科书中;教授不会指望你从空气中获得知识......

答案 2 :(得分:0)

您展示的网站是通过网址传递变量。然后根据URL说明,它确定加载哪个样式表。

http://adactio.com/?皮肤=高科技

您创建变量。然后你会通过链接传递它。类似的东西:

<a href="?skin=hi-tech">Hi Tech Skin</a>

然后,要确定加载哪个样式表,您可以执行以下操作:

<?php if(skin == 'hi-tech'){ ?>

<link rel="stylesheet" href="#" type="text/css" media="screen" />

<?php }else if( ...and so on...

答案 3 :(得分:0)

就像在页面加载时使用javascript一样简单,可以根据页面的查询字符串将“link”元素添加到正确的样式表中。如果您没有查询字符串(首次访问该页面时会出现这种情况),则可以通过java脚本添加默认字符串(或已在页面中添加,javascript编辑当前页面)。

答案 4 :(得分:0)

“所以我猜这两种风格之间会有两种选择”

我认为这个猜测是错误的。从一个页面链接到多个CSS文件并同时使用它们并不罕见。使用较少的文件会更好,但拥有多个文件并不罕见。