我根据this post的理解是,默认base href
是'/'
。 This scotch tutorial表示要包含此基础href:
<!-- ./index.html -->
<base href="/">
对于基本应用,这是绝对必要的,还是浏览器会认为'/'
是相对路径的base href
?
答案 0 :(得分:6)
浏览器会假设'/'是相对路径的基础href吗?
不,他们不会。
HTML规范specifies how relative URLs are resolved。通过规范和定义来解决当根据没有通过&lt; base&gt;指定的基本URL的文档解析相对URL时,并不难。 element,有效(“后备”)基本URL不保证为/
。有一些替代方案,但在通常情况下,文档的后备基本URL被视为文档自己的URL。通常情况下,这不是/
。
将/
指定为每个文档的基本URL是不是一个好主意。这意味着每个相对URL都将以相同的方式解析,无论它出现在哪个文档中;这可以作为一个加号。另一方面,它与解析相对URL的默认行为不同,后者可能是错误的来源。当然,如果您选择这样做,那么您应该在整个申请过程中始终如一地进行。
答案 1 :(得分:0)
基础是页面所在的位置。每个相对URL都与base
相关。让我们假设你在
http://a/b/c
如果此页面中包含此代码的链接:
<a href="../d">abc</a>
然后点击链接,target
将
http://a/d
所以,您的base
位于
http://a/b
因为c
在其中。既然您已了解base
的内容,请查看here。除了href
之外,您还可以看到target
,同时指定链接应该打开的位置。