HTML DOM 返回页面上所有相对URL的基URL 实例
2025-04-24
17
参考资料
功能说明
HTML DOM 中,所有相对 URL 的基 URL 可通过 <base> 标签或 document.baseURI 属性定义和获取。基 URL 决定了页面内相对路径的解析基准,例如链接、图片、脚本等资源的定位。
核心标签
<base> 标签
用于在 HTML 文档的 <head> 中设置全局基 URL,所有相对 URL 均基于此路径解析。
属性:
href:基 URL 的绝对路径(如 https://example.com/)。
target(可选):全局链接打开方式(如 _blank)。
JavaScript 用法
通过 document.baseURI 属性可直接获取当前文档的基 URL(由 <base> 标签或页面 URL 自动生成)。
javascript
Copy Code
// 返回基 URL
const baseUrl = document.baseURI;
console.log(baseUrl); // 如 "https://example.com/base/"
完整实例
html
Copy Code
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<base href="https://example.com/base/" target="_blank"> <!-- 设置基 URL -->
</head>
<body>
<a href="page.html">相对链接</a> <!-- 解析为 https://example.com/base/page.html -->
<img src="images/logo.png"> <!-- 解析为 https://example.com/base/images/logo.png -->
<script>
// 获取基 URL
console.log("基 URL:", document.baseURI); // 输出: https://example.com/base/
</script>
</body>
</html>
说明:
<base> 标签需在 <head> 内声明,且每个文档仅允许一个 <base> 标签。
若未定义 <base>,document.baseURI 默认返回当前页面 URL。
功能特点
统一资源定位
通过基 URL,简化相对路径的维护,避免重复书写绝对路径。
动态适配
基 URL 可动态影响页面内所有相对路径资源(如 <a>、<img>、<script>)的加载行为。
注意事项
优先级规则
<base> 标签的 href 优先级高于页面 URL。若未设置 <base>,则基 URL 为当前文档 URL。
路径兼容性
基 URL 需以 / 结尾,否则可能引发相对路径解析错误(如 https://example.com/base → https://example.com/page.html)。
CSS 扩展
相对路径处理
CSS 中使用的相对 URL(如背景图路径)同样基于基 URL 解析。例如:
css
Copy Code
.banner {
background-image: url("images/banner.jpg");
/* 解析为 https://example.com/base/images/banner.jpg */
}
动态样式注入
通过 JavaScript 结合基 URL 动态生成 CSS 资源路径:
javascript
Copy Code
const style = document.createElement('style');
style.textContent = `.logo { background: url(${document.baseURI}images/logo.png); }`;
document.head.appendChild(style);
通过合理使用 <base> 标签和 document.baseURI,可高效管理页面资源的相对路径逻辑,提升开发效率和可维护性。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
本文来自《西里网 . html 网页设计》 -- 发布时间:2025-03-29
本页链接:https://html.ciilii.com/show/news-1675.html
原创声明:本篇文章均为西里网原创,由《DeepSeek-R1 模型》自动生成。内容真实性仅供参考学习。
本作品采用 知识共享署名—非商业性使用—相同方式共享 4.0 国际许可协议 (CC BY-NC-SA 4.0) 进行许可。
