当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS教程:text-indent隐藏文字出现虚线框outline

CSS样式表
line-height使文本居中的3像素bug问题
IE8.0Beta比较不错的功能:WebSlices
IE8、IE7、IE6、FF简单的CSS HACK测试
Web前端开发的Firefox插件
CSS3教程:background-clip和background-origin
CSS教程:使用ul进行网页的多列布局
CSS盒模型制定网页的宽度和高度的原理
CSS:何制作一个向各个方向延展box?
CSS高级技巧:CSS Sprites
CSS高级技巧:图片替换
CSS高级技巧:文字环绕图片
CSS样式表教程:screen媒体类型的作用
css教程:美化网页段落的排版
网页注册表单的网页设计技巧
CSS控制表格文字样式的研究
dl,dt,dd,ul,li,ol区别及应用
英文教程:鼠标悬停(hover)效果
CSS制作的三款漂亮的网页表单
CSS教程:行高line-height属性(2)
CSS:闭合元素和浮动元素的差别

CSS样式表 中的 CSS教程:text-indent隐藏文字出现虚线框outline


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 294 ::
收藏到网摘: n/a


  链接用图片做背景,text-indent:-9999px; 隐藏文字,此效果在 IE 中是正常的,但在 Firefox 里,鼠标点击该链接时,虚线框却会包住被缩进的文字,结果显示为虚线框 N 长。
  因为平时是用overflow:hidden; 属性的,所以一直也没有注意到这个问题的存在,但当你需要使用 JS 来实现某种交互时,强烈建议不要使用 overflow:hidden; 属性,因为会给你带来很多意想不到的麻烦。
  虚线框,其实就是 CSS 中的 outline 属性,这也说明 IE 和 Firefox 对于 outline 和 border 的解析范围并不一致:IE 认为虚线框就是border的边缘,而 Firefox 则认为虚线框应该是文字范围。
  那 W3C 中是如何定义 outline 的呢?
                         At times, style sheet authors may want to create outlines around visual objects such as buttons, active form fields, image maps, etc., to make them stand out. CSS2 outlines differ from borders in the following ways:
1. Outlines do not take up space.
2. Outlines may be non-rectangular.             
  把虚线框去掉了a:focus { outline:0 } ,毕竟这个问题只存在 Firefox 中。