<base>:文档的 base URL 元素
Baseline 广泛可用 *
<base> HTML 元素指定了文档中所有相对 URL 的基础 URL。一个文档中只能有一个 <base> 元素。
脚本可以通过 Node.baseURI 访问文档使用的 base URL。如果文档中没有 <base> 元素,那么 baseURI 会默认使用 location.href。
属性
此元素的属性包括全局属性。
警告: <base> 元素必须有一个 href 属性、一个 target 属性,或者两者都有。如果指定了至少一个这些属性,那么 <base> 元素必须出现在其他具有 URL 属性值的元素(例如 <link> 的 href 属性)之前。
href-
用于文档中相对 URL 的基础 URL。允许使用绝对 URL 和相对 URL。
data:和javascript:URL 不允许。 目标-
默认 浏览上下文 的关键字或作者定义名称,用于显示没有显式
target属性的<a>、<area>或<form>元素的导航结果。以下关键字具有特殊含义:_self(默认):在当前浏览上下文中显示结果。_blank:在一个新的、未命名的浏览上下文中显示结果。_parent:如果在当前页面是框架的一部分,则在当前浏览上下文的父级浏览上下文中显示结果。如果没有父级,则行为与_self相同。_top:在最顶层的浏览上下文中显示结果(即当前浏览上下文的祖先且没有父级的浏览上下文)。如果没有父级,则行为与_self相同。
用法说明
多个 <base> 元素
如果使用了多个 <base> 元素,只有第一个 href 和第一个 target 会被遵守,其他所有都会被忽略。
页面内锚点
指向文档中某个片段的链接(例如 <a href="#some-id">)会根据 <base> 进行解析,从而向基础 URL 发送一个带有附加片段的 HTTP 请求。
例如,给定 <base href="https://example.com/"> 和此链接:<a href="#anchor">跳转到锚点</a>。该链接指向 https://example.com/#anchor。
target 不能包含 ASCII 换行符、制表符或 <
如果 target 属性包含 ASCII 换行符、制表符或 < 字符,则该值会被重置为 _blank。这是为了防止悬空标记注入攻击,这是一种无需脚本的攻击,攻击者可以将一个未闭合的 target 属性注入页面,直到浏览器遇到一个关闭该属性的字符,从而捕获其后的所有文本。
Open Graph
Open Graph 标签不识别 <base>,应始终使用完整的绝对 URL。例如:
<meta property="og:image" content="https://example.com/thumbnail.jpg" />
示例
<base href="https://www.example.com/" />
<base target="_blank" />
<base target="_top" href="https://example.com/" />
技术摘要
| 内容类别 | 元数据内容。 |
|---|---|
| 允许内容 | 无;它是一个空元素。 |
| 标签省略 | 必须有起始标签,且不能有结束标签。 |
| 允许父级 | 一个不包含其他 <base> 元素的 <head>。 |
| 隐式 ARIA 角色 | 没有对应的角色 |
| 允许的 ARIA 角色 | 不允许 role |
| DOM 接口 | HTMLBaseElement |
规范
| 规范 |
|---|
| HTML # the-base-element |
浏览器兼容性
加载中…