是否有等效于“<base>”的文件路径?
Is there an equivalent to '<base>' that works for file paths?
我有一个基础 url,据我所知,它适用于任何具有类似 href="...
代码但不适用于由 include
命令。
<base href="http://.../www/" target="_blank">
例如,假设我是基础url指定目录的下一级目录。例如,基本目录包含 helper.css
和一个名为 includes
的文件夹,其中有一个文件 sidebmenu.htm
。向下一个目录的页面代码
`<link href="helper.css" media="screen" rel="stylesheet" type="text/css">`
将加载 helper.css
。同样,任何指向基本目录和任何子文件夹内其他页面的 links 都被正确调用。
然而,
<!--#include file="includes/sidemenu.htm"-->
将无法工作,除非我使用 ../
向上一个目录
<!--#include file="../includes/sidemenu.htm"-->
然后就可以了。
是否有类似于 <base>
的东西可以使 include
调用的文件的路径相对于同一基本目录?
<--!#include
是服务器端包含。这意味着服务器已经导入 HTML 和 returns 组合文件作为一个响应。那里的路径不是 url 而是服务器上 html 模板文件的实际文件路径(也就是说,如果你像你一样使用 file
属性)。因此,您甚至可以包含来自文档根目录之外的文件,也就是说,如果您的服务器允许的话(显然 Apache does not)。
<base>
标签是为浏览器的后续请求设置一个基础url,例如图像urls和css文件。
附带说明一下,也许您对 HTML5 client side includes. This is a different method, no drop in replacement for SSI, and browser support 很差的 atm 感兴趣。不过,有趣的阅读 material。 ;)
我有一个基础 url,据我所知,它适用于任何具有类似 href="...
代码但不适用于由 include
命令。
<base href="http://.../www/" target="_blank">
例如,假设我是基础url指定目录的下一级目录。例如,基本目录包含 helper.css
和一个名为 includes
的文件夹,其中有一个文件 sidebmenu.htm
。向下一个目录的页面代码
`<link href="helper.css" media="screen" rel="stylesheet" type="text/css">`
将加载 helper.css
。同样,任何指向基本目录和任何子文件夹内其他页面的 links 都被正确调用。
然而,
<!--#include file="includes/sidemenu.htm"-->
将无法工作,除非我使用 ../
向上一个目录
<!--#include file="../includes/sidemenu.htm"-->
然后就可以了。
是否有类似于 <base>
的东西可以使 include
调用的文件的路径相对于同一基本目录?
<--!#include
是服务器端包含。这意味着服务器已经导入 HTML 和 returns 组合文件作为一个响应。那里的路径不是 url 而是服务器上 html 模板文件的实际文件路径(也就是说,如果你像你一样使用 file
属性)。因此,您甚至可以包含来自文档根目录之外的文件,也就是说,如果您的服务器允许的话(显然 Apache does not)。
<base>
标签是为浏览器的后续请求设置一个基础url,例如图像urls和css文件。
附带说明一下,也许您对 HTML5 client side includes. This is a different method, no drop in replacement for SSI, and browser support 很差的 atm 感兴趣。不过,有趣的阅读 material。 ;)