所有分类
  • 所有分类
  • 后端开发
如何去掉A标签的虚线框

如何去掉A标签的虚线框

运行环境:Windows
所需软件:Word
资源类型:简历

有时产品需要删除A标签的虚线框,如一些活动页面上的链接;事实上,这个细节可以忽略,但他们坚持要删除,哈哈,感觉很痛苦,HOHO。下面简单说说吧~

outline是css3的属性,很少使用。  声明,这是ie6中不兼容的css属性、ie7、漫游浏览器不兼容。

outline的控制是什么?  

聚焦a标签时,a标签区域周围会有一个虚线框,不同于border,它不占任何宽度。当你取消焦点时,虚线框会自然消失。你可以看到几个版本的漫游,火狐或ie。而safari、opera、谷歌浏览器等本身并不支持这种效果,所以看不见。以下是outline的样子示例,也是我正在做的一个页面截取的。  这就是a标签聚焦后出现的虚线框,即outline;  基本上,这是无用的。在大多数情况下,我们希望不要有这种效果,所以我们为a标签设置outline:none;不幸的是,ie6、7和漫游浏览器都无法实现,只有ff,ie8添加了outline:在none之后,聚焦虚线框将被取消。所以我说这个Outline属性基本上是一个费属性。  如何取消这个虚线框?

有三种常用方法:

1、将js控制添加到a标签中,当a标签聚焦时,强制取消焦点,此时a标签自然不会有虚线框。

<a href=”#” onfocus=”this.blur();”>测试</a>

注:这种方法太暴力了。我们需要批量解决整个网站的超链接虚线框。一个接一个地添加这样的代码不会晕倒,所以放弃 ,^_^。

2、其他标签嵌套在a标签中,如span 或者var等,把内容放在嵌套的标签上。此时点击此链接,关注a的子标签,自然不会关注a标签,因此也可以避免此问题。

注:该方法对按钮和图片连接更实用,但对于那些新闻列表文本连接不太实用。。。。

尼玛真的很沮丧,最后只能施加暴力,看看第三种方法

3、用CSS&全站都可以使用JS方法,方便简洁:

a{outline:none;}

a:active{noOutline:expression(this.onFocus=this.blur());}

也可以这样写:

a{

blr:expression(this.onFocus=this.blur());  /* IE Opera */

outline:none;   /* FF Opera */

}

a:focus{ -moz-outline-style: none; }  /* FF  */

说明:这种方法使用过多,效率低
另外,借题发挥吧,如果你用过 Safari 和 Chrome 可能会发现,当输入框得到焦点时,边框会产生阴影效果

如果你想去除阴影效果也可以使用 outline 属性。代码如下:

input,textarea {
outline:none;
}

嗯,以上只是我的初步总结。如果大侠有问题和建议,欢迎吐槽~~~

原文链接:https://www.icz.com/technicalinformation/web/html/2023/05/8855.html,转载请注明出处~~~
0
注意:请收藏好网址www.icz.com,防止失联!站内免费资源持续上传中…!赞助我们
显示验证码
没有账号?注册  忘记密码?