请选择 进入手机版 | 继续访问电脑版
收藏本站腾讯微博新浪微博
点点网模板设计大赛 phpchina

经典论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

蓝色理想 最新研发动态 用悬赏 三天解决问题 解决访问速度慢 论坛支持农历生日 - 给官方提建议

论坛活动及任务 归纳网站最新活动 地图任务 邮件更新任务:保护帐号安全

积分换实物,来参加蓝色理想积分兑换吧! 联系招聘客服 蓝色理想帮你找工作! 万元奖励等你拿——点点网模板设计大赛

查看: 5657|回复: 18

[教程] CSS实现在新窗口打开链接 target="_blank" [复制链接]

zhjsh0020 楼主
帖子
40
体力
28
威望
0
发表于 2006-12-30 11:33:35 |显示全部楼层
实现此功能的CSS是:a:active {text:expression(target="_blank");}

解释一下,这是利用expression来执行javascript语句,对IE5及更高版本的浏览器有效。详情请阅读:CSS中expression使用简介及相关文章。

以下是我在我的页面中做的定义,可实现部分链接在新窗口打开:
<style type="text/css">
.hxlad{width:210px;border:1px solid #AAA;}
.hxlad2{width:210px;border:1px solid #AAA;}
.hxlad a:active {test:expression(target="_blank");}
</style>
在Body中一段
<div class="hxlad">
<a href=http://www.web260.com>itlearner</a>
</div>
<div class="hxlad2">
<a href=http://www.web260.com>itlearner</a>
</div>
这样在默认情况下前一个链接会在新窗口打开,而后一个链接只会在原窗口打开。

[ 本帖最后由 snwebsite 于 2006-12-30 11:38 编辑 ]
web260.com 发泄网
西部数码顶级域名注册商39元抢注!
帖子
217
体力
71
威望
0
发表于 2006-12-30 11:46:19 |显示全部楼层
css哪个版本,支持的?
(\/)︵ 
(·_ _ )~www.hldgame.com
租服务器,上51IDC | [长沙]招聘:PHP经理10K/WEB前端6K/PHP开发6K

使用道具 举报

帖子
124
体力
247
威望
0
发表于 2006-12-30 15:21:27 |显示全部楼层
发现LZ的这个“创意”充满了矛盾


  1. <script type="text/javascript">
  2. <!--
  3.     var LZ=是个看重W3C标准的人
  4.     if(LZ){
  5.         if(expression是CSS标准属性) return;
  6.         else return false;
  7.     }
  8.     else{
  9.         直接在A标签里写target即可,何必定义到CSS中;
  10.         return false;
  11.     }
  12. //-->
  13. </script>
复制代码

:D
我要这天,再遮不住我眼,要这地,再埋不了我心,要这众生,都明白我意,要那诸佛,都烟消云散!

使用道具 举报

zhjsh0020 楼主
帖子
40
体力
28
威望
0
发表于 2006-12-30 16:18:11 |显示全部楼层
我在看看,有问题在改
web260.com 发泄网

使用道具 举报

客家山哥

银牌会员

帖子
3633
体力
2708
威望
0
居住地
广东省 深圳市
发表于 2006-12-30 17:11:04 |显示全部楼层

 提示:您可以先修改部分代码再运行

使用道具 举报

wlvis 
帖子
72
体力
361
威望
0
发表于 2006-12-30 19:02:29 |显示全部楼层
3楼的回复太强了!佩服一个!
ps.如果有人看不懂,结合个人的意见,给大家解释一下:
1.expression只在IE浏览器中有效,并且是IE5以上的版本,个人认为类似于HTML中的marquee标签,是微软自己推出的一个东西;
2.expression不被w3c认可,如果你对标准很看重,也不打算做一个IE-only的网站,请不要使用它;
3.最后一个是效率问题,我也曾使用过expression,感觉浏览器处于死掉的边缘,并且确实死了好几次,可怜的CPU也是在100%徘徊,有这样一种解释是,鼠标移动一下,expression里的javascript语句就要执行好几百万次,不知道是否有这么夸张…
---Vis---

使用道具 举报

old9 
帖子
653
体力
1762
威望
88
居住地
安徽省 合肥市
发表于 2006-12-30 20:18:57 |显示全部楼层
原帖由 aquarior 于 2006-12-30 15:21 发表
发现LZ的这个“创意”充满了矛盾


<script type="text/javascript">
<!--
    var LZ=是个看重W3C标准的人
    if(LZ){
        if(expression是CSS标准属性) return;
        els ...



orz ..
http://old9.blogsome.com 已被 GFW 封锁

使用道具 举报

mao2 

绝世无双

银牌会员

帖子
371
体力
1476
威望
0
发表于 2006-12-31 13:48:14 |显示全部楼层
expression很费资源的说

使用道具 举报

zhjsh0020 楼主
帖子
40
体力
28
威望
0
发表于 2006-12-31 17:14:09 |显示全部楼层
那有什么更好的办法吗?
web260.com 发泄网

使用道具 举报

小斌 
帖子
287
体力
575
威望
0
居住地
广东省 深圳市
发表于 2007-1-2 22:20:48 |显示全部楼层
原帖由 zhjsh0020 于 2006-12-31 17:14 发表
那有什么更好的办法吗?


http://www.w3cn.org/article/tips/2005/107.html

使用道具 举报

petyy 

是非门

初级会员

帖子
307
体力
297
威望
0
居住地
湖南省 长沙市
发表于 2007-1-3 19:07:50 |显示全部楼层
楼上的是js实现的,LZ的意思是用css来实现。
js实现链接在新窗口打开的示例:

 提示:您可以先修改部分代码再运行

使用道具 举报

帖子
104
体力
314
威望
0
发表于 2007-1-3 21:39:27 |显示全部楼层
用_top不行吗

使用道具 举报

帖子
10
体力
26
威望
0
发表于 2007-1-5 13:20:50 |显示全部楼层
不错,很有用

使用道具 举报

帖子
8
体力
19
威望
0
发表于 2007-1-5 22:54:22 |显示全部楼层
太好了,正找呢

使用道具 举报

帖子
5
体力
13
威望
0
发表于 2007-1-6 23:09:51 |显示全部楼层
不错,看看

使用道具 举报

帖子
6
体力
7
威望
0
发表于 2007-1-31 13:25:49 |显示全部楼层

 提示:您可以先修改部分代码再运行


[ 本帖最后由 laoyuan 于 2007-1-31 13:27 编辑 ]

使用道具 举报

客家山哥

银牌会员

帖子
3633
体力
2708
威望
0
居住地
广东省 深圳市
发表于 2007-1-31 14:46:07 |显示全部楼层
原帖由 laoyuan 于 2007-1-31 13:25 发表

<head>
<base target="_blank">
</head>
<body>
<p><a href="http://bbs.blueidea.com/thread-2708790-1-1.html">打开打开,给我打开</a> ...

这样子定义的话整个页面的链接都是新窗口中打开了

使用道具 举报

帖子
6
体力
7
威望
0
发表于 2007-2-1 14:07:29 |显示全部楼层
是啊,要的就是这样的效果,省得麻烦了。。W3C不管base是吧。。

使用道具 举报

babysize

中级会员

帖子
321
体力
325
威望
2
发表于 2007-2-1 17:51:05 |显示全部楼层
我想知道base如何才能只针对某个区块。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

Archiver|手机版|安久科技提供CDN|blueidea.com ( 京ICP备05002321号 )  

GMT+8, 2012-2-11 03:34 , Processed in 0.095675 second(s), 8 queries , Gzip On, Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部