去掉A标签的虚线框

简介: outline是css3的一个属性,用的很少。 声明,这是个不能兼容的css属性,在ie6、ie7、遨游浏览器都不兼容。 outline控制的到底是什么呢? 当聚焦a标签的时候,在a标签的区域周围会有一个虚线的框,这个框不同于border的是,它是不占有任何宽度的。

outline是css3的一个属性,用的很少。

声明,这是个不能兼容的css属性,在ie6、ie7、遨游浏览器都不兼容。

outline控制的到底是什么呢?

当聚焦a标签的时候,在a标签的区域周围会有一个虚线的框,这个框不同于border的是,它是不占有任何宽度的。当你取消焦点的时候,这个虚线框就会自然消失。你可以通过遨游、火狐或者ie的几个版本看到。而safari、opera、goole浏览器等本身就不支持这个效果,所以看不到。下面是outline的样子示例,也是我正在做的一个页面上截取出来的。

这个就是a标签被聚焦后出现了虚线框,也就是outline;

基本上这个是没有用的效果,大多数情况下我们会希望不要出现这种效果,于是给a标签设置outline:none;很遗憾的是,ie6、7和遨游浏览器里都不能实现,只有ff,ie8在加了outline:none后会取消聚焦的虚线框。所以我说这个Outline属性基本就是一个费属性。

怎么样才能取消这个虚线框呢?常用方法有三种:

1:在a标签里加入js控制,当a标签被聚焦时,强制取消焦点,这时候a标签自然不会有虚线框。

<a href="#" onfocus="this.blur();">测试</a>
这里设置聚焦时触发blur();强制取消焦点。自然是屡试不爽。

2:在a标签里嵌套其他标签,比如span 或者var等等,把内容放在被嵌套的标签里。这时候点击这个链接,聚焦的是a的子标签,自然不会聚焦在a标签上,所以也能避免这个问题。

3:不适用a标签做链接,采用其他标签,使用js做出hover的效果,在css里加入cursour:pointer;设置鼠标以上时变小手。给用户是链接的错觉。使用js做点击时的页面跳转等。最大的缺点是对se友好性比前两种差很多。

这三种方法的共同点是比较麻烦,相比较而言,推荐第一种,第二第三也视不同的情况而定。也是会用到的。

我认为outline的这个效果时浏览器迟早要取消掉的,所以关于这个属性的知识也相当的鸡肋。

最近打算写点标签默认属性的有效利用方面的东西,不过越想写越觉得写的东西会很多,每每都是写点就删掉了。想从整个知识体系中抽离出一部分来单独讲,是很难的事,就像是一张网,你只讲其中一根线的话,很难让人理解知道你在讲的网,而这个网又太大了。

有空闲的时候,我会好好规划下该怎么写这些。

或者还可以在css中加入body a{outline:none;blr:expression(this.onFocus=this.blur());}

两种情况均可以。后一种比较简单。

目录
相关文章
|
2月前
Axure 母版红色怎么去除?
Axure 母版红色怎么去除?
23 0
|
3月前
|
前端开发
css 鼠标悬浮时,下划线变成会动的波浪线
css 鼠标悬浮时,下划线变成会动的波浪线
29 1
vitepress如何配置右上角的小两侧标志,利用nav标签进行修改,右侧边栏如何设置成自动弹出水平框,让原先隐藏的框能够显示出来
vitepress如何配置右上角的小两侧标志,利用nav标签进行修改,右侧边栏如何设置成自动弹出水平框,让原先隐藏的框能够显示出来
【Axure教程】用气泡元件显示中继器表格里的省略文字
【Axure教程】用气泡元件显示中继器表格里的省略文字
【Axure教程】用气泡元件显示中继器表格里的省略文字
|
前端开发
html+css鼠标经过的样式变化例题
当用户移动鼠标到指定的区域或内容时,会出现什么不一样的渲染效果呢?看这篇文章一起来了解吧!
141 0
 html+css鼠标经过的样式变化例题
点击图片或者鼠标划过切换样式的另一种写法
点击图片或者鼠标划过切换样式的另一种写法
65 0
去掉a标签的所有样式(去掉超链接标签所有样式)
去掉a标签的所有样式(去掉超链接标签所有样式)
633 0
|
前端开发
CSS气泡提示框 可自定义配置箭头
在线演示 本地下载
1480 0
|
C#
给WPF文字加多条修饰线
原文:给WPF文字加多条修饰线 这是上篇WPF中的文字修饰——上划线,中划线,基线与下划线 最后留给朋友思考的问题。 效果图: XAML代码:                                     ...
856 0