<base>: 文档基本 URL 元素
<base>
HTML 元素指定用于文档中所有相对 URL 的基本 URL。文档中只能有一个 <base>
元素。
文档的已用基本 URL 可以通过脚本使用 Node.baseURI
访问。如果文档没有 <base>
元素,则 baseURI
默认设置为 location.href
.
属性
此元素的属性包括 全局属性.
警告:<base>
元素必须具有 href
属性、target
属性或两者。如果至少指定了其中一个属性,则 <base>
元素必须出现在其他具有 URL 作为属性值的元素之前,例如 <link>
的 href
属性。
href
-
在整个文档中用于相对 URL 的基本 URL。允许使用绝对和相对 URL。不允许使用
data:
和javascript:
URL。 target
-
用于显示从 浏览上下文 中的
<a>
、<area>
或<form>
元素进行导航的结果的 **关键词** 或 **用户定义名称**,这些元素没有显式的target
属性。以下关键字具有特殊含义_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
属性被注入到页面中,以便任何后续文本都被捕获,直到浏览器到达关闭属性的字符。
开放图谱
开放图谱 标签不承认 <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/" />
技术摘要
内容类别 | 元数据内容。 |
---|---|
允许的内容 | 无;它是一个 空元素。 |
标签省略 | 必须有起始标签,并且不能有结束标签。 |
允许的父元素 | 一个 <head> ,它不包含另一个 <base> 元素。 |
隐式 ARIA 角色 | 没有对应的角色 |
允许的 ARIA 角色 | 不允许使用 role 。 |
DOM 接口 | HTMLBaseElement |
规范
规范 |
---|
HTML 标准 # the-base-element |
浏览器兼容性
BCD 表格只在浏览器中加载