使用<base />标记与相对href和<a href="#"> be resolved?</a>之间是否存在冲突?

时间:2015-02-04 20:39:02

标签: html url base-tag

使用带有相对网址的标记时,例如

<base href="app/" />

在整个站点中使用任何<a href='#'>会导致根据相对路径重写锚标记上的href,然后该路径可以单击到无效的URL。

我可以用<a href='#'>替换<a href='javascript:void(0)'>然后浏览器忽略根据基本标记中指定的前缀重写目标网址 - 它按预期工作(什么都不做,导致没有导航。< / p>

但我想知道是否有更通用的方法可以排除'#'网址目标?

2 个答案:

答案 0 :(得分:2)

没有。根据定义,具有base属性的href元素会影响所有URL值属性。您的页面可能需要重新设计。 base这样的元素很少是一个好主意,并且a不属于链接的元素更糟糕。

答案 1 :(得分:1)

除了实际链接之外,我不会使用<a>标记。

如果您想要一个无法浏览的可点击元素,请使用<button type="button"></button>并根据自己的喜好设置样式。毕竟,你在这里寻找的是一个按钮,而不是一个链接。