当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > Firefox2中输入框丢失光标bug的解决方法

CSS样式表
通过实例学习CSS布局网页
CSS网页布局实例 常见的12种网页布局
CSS教程 伪清除浮动
CSS 关于浮动
关于css display: inline block inline-block的区别分析
CSS 日期垂直排列的两种技巧
CSS 三栏等高布局实现方法
IE6 注释引起的文字溢出和浮动错位的解决思路
15个必须阅读的CSS入门文章
CSS样式表与具体设备表示
CSS 层叠加的5条原则
检测用户浏览器是否支持CSS3的方法
CSS 选择器支持列表
clip 剪裁矩形实现代码
common.css文件 网页设计常用的基本css控制
再谈动态添加样式规则的方法
HTML/CSS对浏览器的判断
CSS 文件命名规则
用 CSS 让你的按钮(button)更加迷人
CSS 背景属性5个应用实例.

CSS样式表 中的 Firefox2中输入框丢失光标bug的解决方法


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

在Firefox2中某些情况下输入框虽然可以输入,但在获取焦点时没有文本输入光标的显示,这个是非常恶心的bug,非常容易让表单使用者有一种不能输入的错觉,即使后来尝试知道可以输入,但也无法判断光标定位在哪儿。 虽然庆幸的是Firefox3中解决了这个bug,但Firefox3还在beta阶段,取代Firefox2还是需要一些时间的,下面就来仔细说一下这个问题:
一、样式为{position:absolute;}的容器中的表单输入框在样式为类似{overflow:auto;}的容器区域中失去光标
可以通过例一到例六来了解最常见的情况。
如果想整个body都出现失去光标,可以设置html和body两个容器,请看示例。包括举例的overflow:auto在内能引起该Bug的overflow属性共有:
overflow:auto
overflow-x:auto;
overflow-y:auto;
overflow:scroll;
overflow-x:scroll;
overflow-y:scroll;
overflow-x:hidden;
overflow-y:hidden;
除了避免使用overflow属性的其他解决方案:
利用overflow:hidden代替产生bug的oveflow属性
在具有上述overflow属性的容器中加入position:relative,请看实例。
在positon:absolute的容器上加入同样的oveflow属性,同时注意在页面出现的顺序,见例四
为使用能产生bug的oveflow属性的容器选择合适的标签,比如fieldset,见例六。
二、样式为{position:absolute;}的容器中的表单输入框在iframe容器区域中失去光标
可以通过例七来了解这个情况。IE6中为了解决下拉列表级别过高问题,往往需要用iframe来遮盖它,偶尔疏忽忘记做浏览器限定就有可能导致上面的问题。
现在看来Firefox2对iframe的处理bug还真不少,比如以前就发现了Firefox返回时Iframe的显示Bug。