HTML,如何使用相对URL作为基本URL?

5

在页面上设置基础网址的相对值是否可行?

例如,我有两个网站(网站A和网站B)。对于网站B,它将位于www.website-a.com/website-b。那么我可以将BASE href设置为“/website-b/”吗?

谢谢


7
我认为尝试一下自己做这件事不到5分钟就可以了。 - kennytm
2
...并且不到一分钟就可以在谷歌上找到答案。 - jholster
2
@KennyTM:确实,只要你在不止一个浏览器中进行测试就可以了;-)虽然这几乎不值得一提(我只是作为对你评论的回应),但IE8在兼容模式下以及IE7或更低版本(错误地)支持基本元素的相对URL。 - Andy E
1
IE9和IE8(无论是否兼容模式)都不支持相对基础路径。测试页面:http://www.enhanceie.com/test/base/relative.html - EricLaw
对于最受欢迎的评论(“我认为尝试自己做这件事不到5分钟...”),我希望人们仍然至少有时会“求助于”阅读一些规范,而不是生产“实验性编程”所产生的不可移植、脆弱的代码。 - Sz.
2个回答

6

好的,谢谢。我想我可以在域名上使用一些PHP,这样当从开发环境切换到生产环境时就不需要更改任何内容了。谢谢。 - Probocop
@Probocol 如果您可以在域中使用PHP,为什么不直接在指定链接的位置使用它呢?BASE会使长期维护变得更加困难。 - Pekka
值得一提的是:这段内容来自Google Code存档页面(从此处复制了Markdown编辑器(“Pagedown”)的主页)。 <base href="/archive/"> (事实上,这在我的代理中引起了问题,导致我来到这里...所以@jholster的随口“谷歌一下”评论有了全新的含义...“自我造成的无限递归”是一件事吗? :)) - Sz.

4

根据W3C规范,不可能实现:

href = uri [CT]
此属性指定一个绝对URI,作为解析相对URI的基本URI。


(谷歌员工请注意日期/URL:这是针对HTML4的!) - Sz.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接