`

html代码中<base target="_self">的用法和作用

    博客分类:
  • html
 
阅读更多

在网页中,经常碰到这种情况:点击某些链接,就会弹出新窗口,原来的页面部改变,而有些链接,就在原窗口上打开新的链接,原窗口没有了,被覆盖了。这个是为什么呢?怎么实现的呢?
         target=_blank,这个标签,就是解决这个问题的。<base target=_blank>是将基本链接的目标框架都改为新页打开,即弹出新窗口。<a>、<form>等很多标签都支持target="black"的属性,可以在这样的标签里单独做设置,比如:

<a href="xxx.htm" target="_blank">超链接内容</a>

<form action="xxx.htm" target="_blank">表达内容<input type="submit" value="提交按钮"></form>

如果不加这一句,默认均为本页刷新,即target="_self"。还有两个这样的标签,<target=_top>表示在整页窗口打开,<target=_parent>表示在父窗口打开。

<a href="http://www.bookboy.cn/"   target="_blank">单独定义,新窗口打开</a>
<a href="http://www.bookboy.cn/"   target="_self">单独定义,相同窗口打开</a>
<a href="http://www.bookboy.cn/"   target="_top">单独定义,整页窗口打开</a>
<a href="http://www.bookboy.cn/"   target="_parent">单独定义,父窗口打开</a>

     另外,这只是单独设置,如果有在某个页面上有很多的链接或者form表单,逐一的添加标签会很麻烦,有没有类似批处理的呢?

   这就要用到<base target=_xxx>   ,这是基本的HTML语言。用<base target=_××>来设置这个网页所有链接的目标窗口。也就是说,网页中只要添加<base target=_××>这句,那么所有的超链接就无须单独设置。最好将这句写在<head>和</head>之间。例如

<base target=_blank>表示网页中所有的超链接的目标地址都在新建窗口中打开。

<base target=_self>表示网页中所有的超链接的目标地址都在原窗口上打开。

       当然,这样的标签有时也会碰到麻烦。

1   不符合标准 

      当我们使用W3C过渡型标准时,即DOCTYPE(xh tml1-transitional. dtd),没有问题,但是使用严格的标准时,即DOCTYPE(xhtml1-strict.dtd),就会出错,错误提示:

"there is no attributetargetfor this element(in this HTML version)"

         原因是,外国人认为,不经过用户同意,就随便打开新窗口,是不礼貌的,不尊重用户的,可参看   http://bbs.chinahtml.com/showthread.php?t=53657

     那碰到这种情况时怎么办呢?

         HTML4.0增加了一个新属性:rel,这个属性用来说明链接和包含此链接页面的关系,以及链接打开的目标。rel有许多的属性值,比如next、previous,、chapter、section等等。我们要使用的就是rel="externa l"属性。原来这样写的代码:

<a href="document.html" target="_blank">打开一个新窗口</a>现在要写成这样:
<a href="document.html" rel="external">打开一个 新窗口</a>这是符合strict标准的方法。当然还必须配合一个javascript才有效。
javascript
完整的代码JS如下:
function externallinks() {
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a");
for (var i=0; i<anchors.length; i++) {
    var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
        anchor.getAttribute("rel") == "external")
      anchor.target = "_blank";
}
}
window.onload = externallinks;
你可以把它保存成一个.js文件(比如external.js),然后通过外部联接方法调用:
<script type="text/javascript" src="external.js"></script>
就是这样。
2    浏览器不支持
    有时,使用了上述标签,但是,任旧不见效果,比如使用了target=_blank,却不能弹出窗口,这是因为,有些浏览器被用户设置了,不让弹出窗口,当然这样设置是为了屏蔽广告,因此,这是就无法打开新窗口,知道了原因,解决就很简单了,在浏览器中设置一下就可以了。
3 衡水人才网03188.net首页<base target="_blank" />不起作用了,将它提前,放到了<title>下边,js前边就正常了,原来加载js是会影响到一些代码。

总结一下:在head中,js放最后。
 

分享到:
评论

相关推荐

    base target=””控制链接的目标打开框架

    如果不使用 `&lt;base&gt;` 标签,并且没有设置 `target` 属性,链接默认会在当前页面(`target="_self"`)中打开,也就是说,它们会替换掉当前页面的内容。例如: ```html &lt;a href="p1.html"&gt;第一页&lt;/a&gt; &lt;a href="p2....

    html base标签 target=_parent使用介绍

    HTML中的`&lt;base&gt;`标签是一个非常实用但不常被广泛了解的元素,它主要用于设置页面中所有链接的默认基础URL和目标窗口。了解并正确使用`&lt;base&gt;`标签可以帮助优化网页的导航行为,提高用户体验。 首先,我们来看`...

    HTML a 标签的 target 属性.doc

    - 如果在 `&lt;base&gt;` 标签中设置了 `target` 属性,则该设置将成为所有 `&lt;a&gt;` 标签的默认行为。 - 使用框架时,确保 `&lt;frame&gt;` 或 `&lt;iframe&gt;` 元素的 `name` 属性与 `&lt;a&gt;` 标签中的 `target` 属性匹配,以便正确地在...

    jeecms使用说明文档

    &lt;a href="${c.url}" target="_self"&gt;&lt;span&gt;${c.name}&lt;/span&gt;&lt;/a&gt; [#list tag_list as c1] &lt;@cms_channel_list parentId=c1.id&gt; [#if tag_list?size &gt; 0] &lt;li class="havesubchild"&gt; [#else] &lt;li&gt; [/#if] &lt;a...

    网页设计文字与段落.ppt

    在HTML中,我们还可以使用`&lt;font&gt;`标签(虽然在现代HTML5中不推荐使用)来调整字体、大小和颜色,或者使用CSS来更精细地控制文本样式。 总之,理解和熟练运用这些HTML标签是网页设计的基础,它们使得我们可以创建...

    Jeecms标签使用手册

    &lt;a href="${c.url}" target="_self"&gt;&lt;span&gt;${c.name}&lt;/span&gt;&lt;/a&gt; [@cms_channel_list parentId=c.id] [#if tag_list?size&gt;0] &lt;ul&gt; [@cms_channel_list parentId=c.id] [#list tag_list as c1] [@cms_channel_list ...

    00000035_html-base的用法.rar

    在深入理解`&lt;base&gt;`标签的用法之前,我们先要明白URL(统一资源定位符)在网页中的作用。 URL是互联网上每个资源的唯一地址,它包含协议(如http或https)、主机名、路径和可能的查询参数。相对URL则是相对于当前...

    base target=""规定基本链接的目标打开框架

    - &lt;base&gt;标签通常和&lt;base target=&gt;属性一起使用,以控制链接的默认打开行为。 2. target属性: - target属性可以设置为不同的值,决定链接在哪个窗口或框架中打开。 - target的值一般有_self、_blank、_parent和...

    HTML语法大全.dos

    --&gt;` 用于在HTML代码中添加注释,这对开发者来说是一种记录和解释代码的方法,这些注释不会显示在最终的网页中。 2. **跑马灯**:`&lt;marquee&gt;` 标签用来创建滚动或循环显示的效果。例如: - `&lt;marquee&gt;` 创建普通...

    showmodaldialog的用法收集

    同样,确保使用`&lt;base target="_self"&gt;`来避免打开新窗口后再关闭。 ### 五、数据传递技巧 通常,`showModalDialog`或`showModelessDialog`通过`dialogArguments`参数传递数据: ```javascript window....

    struts中base标签的target属性

    通过使用 `&lt;s:base&gt;`,开发者可以方便地管理整个应用中的链接,避免硬编码 URL,从而提高代码的可维护性和可读性。当页面中有多个链接指向同一域名下的资源时,使用 `&lt;s:base&gt;` 标签可以极大地减少重复代码,并且当...

    lotus_web开发注意问题

    &lt;base target="_self"&gt; &lt;/head&gt; ``` 这样处理后,所有带有 `target="_self"` 的链接都将按照预期在当前窗口中打开。 #### 三、`iframe` 对象与子页面对象的区别 在处理 `iframe` 时,开发者可能会遇到两种不同的...

    html超级链接标记A的TARGET属性详解

    2. **在当前页打开链接或刷新**:在文件头添加`&lt;base target="_self"&gt;`可以让链接在当前页面打开。 #### 六、示例代码 下面是一些具体的示例代码: - **回到主页**: ```html &lt;a href="index.htm"&gt;回到主页&lt;/a&gt;...

    html+css 课件

    以上内容涵盖了HTML入门阶段所需了解的核心知识点,包括HTML的基本概念、发展历程、基本语法以及常用标签的使用方法等。这对于初学者来说是非常重要的基础知识,有助于构建扎实的前端开发基础。

    html+css+javascript.ppt javascript css html

    HTML中的锚点`&lt;a name="AnchorName"&gt;`用于创建一个书签,其他链接可以通过`&lt;a href="#AnchorName"&gt;`直接跳转到页面的特定位置。而链接标签`&lt;a&gt;`除了基本的跳转功能外,还可以通过`target`属性控制新链接是在当前窗口...

    HTML语法介绍

    - `&lt;base target="frameName"&gt;`:设置文档中的所有链接都在特定框架或窗口打开。 #### 四、总结 本文主要介绍了HTML中的一些基本标签及其属性,包括常用的文本样式、链接、图像、表格以及框架等元素。这些元素是...

    用showModalDialog弹出页面后,提交表单总是弹出一个新窗口

    另一种解决方案是使用`&lt;base&gt;`标签来指定页面中所有链接和表单的默认目标。设置`&lt;base target="_self"&gt;`可以使表单提交在当前窗口(即模态对话框)中进行,而不是打开新的窗口。 ```html &lt;!-- 在弹出页面的&lt;head...

    html语法概述和各个标签的说明

    - **示例用法:** `&lt;title&gt;我的网站&lt;/title&gt;` ##### 4. `&lt;link&gt;` 标签 - **用途:** 用于链接外部资源,如CSS文件。 - **示例用法:** `&lt;link rel="stylesheet" href="styles.css"&gt;` ##### 5. `&lt;isindex&gt;` 标签 - ...

    ASPNET跳转网页7种方法

    ASP.NET 是一种强大的 web 应用程序开发框架,它提供了...在使用 `showModalDialog` 或 `showModelessDialog` 时,如果不想弹出新窗口,可以在被打开的网页中添加 `&lt;base target="_self"&gt;`,确保链接在当前窗口内打开。

    showModalDialog和showModelessDialog的用法

    &lt;base target="_self"&gt; ``` 此代码应放置在 `&lt;head&gt;` 标签内,通常位于 `&lt;html&gt;` 和 `&lt;body&gt;` 之间。这样设置之后,所有的超链接都会在当前对话框中打开,而不是弹出新的窗口。 #### 三、刷新showModalDialog和...

Global site tag (gtag.js) - Google Analytics