替代样式表

在网页中指定**备用样式表**为用户提供了查看页面多个版本的方法,这基于他们的需求或偏好。

注意:此功能在没有扩展程序的浏览器中支持性不佳。若要提供与用户现有偏好相符的替代演示,请参阅 CSS 媒体特性 prefers-color-schemeprefers-contrast

Firefox 允许用户使用“查看 > 页面样式”子菜单选择样式表。其他浏览器需要扩展程序才能启用此功能。网页还可以提供自己的用户界面,让用户切换样式。

示例:指定替代样式表

备用样式表通常使用带有rel="alternate stylesheet"title="…"属性的<link>元素进行指定。例如

html
<link href="reset.css" rel="stylesheet" />

<link href="default.css" rel="stylesheet" title="Default Style" />
<link href="fancy.css" rel="alternate stylesheet" title="Fancy" />
<link href="basic.css" rel="alternate stylesheet" title="Basic" />

在此示例中,“默认样式”、“花哨”和“基本”将列在“页面样式”子菜单中,“默认样式”预先选中。当用户选择其他样式时,页面将立即使用该样式表重新渲染。

无论选择哪种样式,reset.css 样式表中的规则都将始终应用。

试一试

详情

文档中的任何样式表都属于以下类别之一

  • **持久**(具有rel="stylesheet",无title=""):始终应用于文档。
  • **首选**(具有rel="stylesheet",并指定了title="…"):默认情况下应用,但如果选择了备用样式表,则禁用。**只能有一个首选样式表**,因此提供具有不同 title 属性的样式表会导致其中一些样式表被忽略。
  • **备用**(rel="alternate stylesheet",并指定了title="…"):默认情况下禁用,可以选择。

当使用<link rel="stylesheet"><style>元素上的title属性引用样式表时,该标题将成为提供给用户的选项之一。使用相同title链接的样式表是同一选项的一部分。没有title属性链接的样式表始终应用。

使用rel="stylesheet"链接到默认样式,并使用rel="alternate stylesheet"链接到备用样式表。这告诉浏览器哪个样式表标题应默认选中,并在不支持备用样式表的浏览器中应用该默认选择。

规范

规范
HTML 标准
# rel-alternate
HTML 标准
# the-link-is-an-alternative-stylesheet
HTML 标准
# attr-style-title
HTML 标准
# attr-meta-http-equiv-default-style
CSS 对象模型 (CSSOM)
# css-style-sheet-collections

浏览器兼容性

BCD 表格仅在浏览器中加载