JSP的base标签问题
程序员文章站
2022-04-17 11:27:06
...
在进行java web项目编写时,发现 <base href="<%=basePath%>>,但是并不了解它的具体作用。
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<head>
<base href="<%=basePath%>">
</head>
在网上查阅后,资料如下:
base标记是一个基链接标记,是一个单标记。用以改变文件中所有连结标记的参数内定值。它只能应用于标记与之间。
你网页上的所有相对路径在链接时都将在前面加上基链接指向的地址。
重要属性:
href
设定前缀的链接地址
target
设定文件显示的窗口,同a标记中的target
这个标签的用处是解决编程时候的相对路径问题,比如有的cms,因为每页路径不一样,他就给你生成<a href="/sdsd/dsd.html">sddsds</a>
之类的,如果在本地调试,肯定会在本地开一个目录的,这样就乱了,你可以把它生成相对路径,如<a href="sdsd/dsd.html">sddsds</a>
,只要在head部分加上<base href=http://localhost/abc/>
即可。
所以说,这个标签主要为了解决web编程的时候一些相对路径的问题。
当然,这个base还有一个用法,如在head部分加上这么一行:<base href="_blank">
,就是默认所有链接在新窗口打开。
上一篇: SpringMVC之指定静态资源路径