hover在IE6下的問(wèn)題及解決方法
你對(duì)hover在IE6下的問(wèn)題是否了解,這里和大家分享一下hover在IE6下的問(wèn)題及解決方法,相信本文介紹一定會(huì)讓你有所收獲。
hover在IE6下的問(wèn)題
在處理CSS的機(jī)制上,IE總是有很多讓人吐血的舉動(dòng),但對(duì)于他們現(xiàn)在的改進(jìn)力度還是值得高興的。
就拿對(duì)偽類:hover的支持來(lái)說(shuō),IE7+終于添加了對(duì)a以外其它標(biāo)簽的支持。對(duì)于這樣的改進(jìn),當(dāng)然是要拍手稱快的,但在IE6下,:hover就連對(duì)a的支持都不是那么的盡如人意。下面就是我想簡(jiǎn)單說(shuō)的一個(gè)關(guān)于:hover在IE6及更早瀏覽器下的問(wèn)題。
◆很多人可能都已經(jīng)知道了:hover在IE6及更早瀏覽器(以下稱IE6-)下的一些問(wèn)題。我主要是想說(shuō)一下形如a:hoverspan{}這樣的問(wèn)題。
有的時(shí)候?yàn)榱嗽黾右恍┖?jiǎn)單的動(dòng)態(tài)效果,常常會(huì)借助:hover的幫忙,比如我們時(shí)常會(huì)令鼠標(biāo)經(jīng)過(guò)鏈接時(shí)改變文字的顏色。如:
- a:hover{color:#F00;}
- <ahrefahref="?">鼠標(biāo)經(jīng)過(guò)時(shí)改變我的顏色</a>
是的,這將在所有的瀏覽器中都有效。但如果換成這樣:
- a:hoverem{color:#F00;}
- <ahrefahref="?">鼠標(biāo)經(jīng)過(guò)時(shí)改變我的<em>顏色</em></a>
你會(huì)發(fā)現(xiàn)在IE6-下什么都沒(méi)有發(fā)生,我們的樣式失效了。對(duì),就是這樣,應(yīng)該很多人都碰到過(guò)且已經(jīng)解決了這個(gè)問(wèn)題。
是的,只需要再添加一個(gè)a:hover{}樣式就可以解決這個(gè)問(wèn)題了,里面可以是zoom,padding,margin等屬性。如下:
- a:hover{zoom:1;}
- a:hoverem{color:#F00;}
- <ahrefahref="?">鼠標(biāo)經(jīng)過(guò)時(shí)改變我的<em>顏色</em></a>
看著恢復(fù)了正常的效果,去想可能是因?yàn)槭裁丛斐?hover失效的。你可以使用zoom,display,padding等等屬性來(lái)搞定,于是想會(huì)不會(huì)是因?yàn)閔aslayout。恩,很有可能就是這樣。但你接著測(cè)試,會(huì)發(fā)現(xiàn),不論你在a:hover{}寫入任何屬性,color啊,font-size啊,overflow啊(甚至是不存在的屬性,如xx:yyy),都可以使之恢復(fù)正常。
測(cè)試到這里是不是有點(diǎn)目瞪口呆的感覺(jué)?對(duì),我也是這樣的。至于原因是什么,我還不知道,或許有人知道。
◆一個(gè)a:hover的簡(jiǎn)單例子:
運(yùn)行代碼框
- <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- <htmlxmlnshtmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="zh-cn"lang="zh-cn">
- <head>
- <metahttp-equivmetahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
- <metahttp-equivmetahttp-equiv="Content-Language"content="zh-cn"/>
- <title>:hover在IE6andearlier下的問(wèn)題</title>
- <metanamemetaname="Description"content="IE6andearlier
- 下的:hover問(wèn)題"/>
- <metanamemetaname="Keywords"content="IE6,:hover"/>
- <metanamemetaname="author"content="Doyoe(飄零霧雨),dooyoe@gmail.com"/>
- <styletypestyletype="text/CSS">
- #navul{zoom:1;overflow:hidden;list-style:none;margin:0;padding:0;background:#CCC;}
- #navli{float:left;width:100px;height:30px;line-height:30px;text-align:center;}
- #nava{color:#333;}
- #nava.en{display:none;}
- #nava:hover{display:block;background:#333;color:#CCC;}
- #nava:hover.en{display:inline;}
- #nava:hover.cn{display:none;}
- </style>
- </head>
- <body>
- <dividdivid="nav">
- <ul>
- <li><ahrefahref="#"><spanclassspanclass="cn">首頁(yè)</span><spanclassspanclass="en">Homepage</span></a></li>
- <li><ahrefahref="#"><spanclassspanclass="cn">新聞</span><spanclassspanclass="en">News</span></a></li>
- <li><ahrefahref="#"><spanclassspanclass="cn">圖片</span><spanclassspanclass="en">Picture</span></a></li>
- <li><ahrefahref="#"><spanclassspanclass="cn">下載</span><spanclassspanclass="en">Download</span></a></li>
- <li><ahrefahref="#"><spanclassspanclass="cn">留言</span><spanclassspanclass="en">Comment</span></a></li>
- </ul>
- </div>
- </body>
- </html>
[Ctrl+A全部選擇提示:你可先修改部分代碼,再按運(yùn)行]
例子雖然簡(jiǎn)單,但即刻你又會(huì)發(fā)現(xiàn)其實(shí)中英菜單和一些CSStips效果也是那么的簡(jiǎn)單。
原文:http://blog.doyoe.com/article/216.htm
【編輯推薦】
- IE6不支持的五大CSS選擇符
- 探究IE8與IE7具體功能中窗口功能按鈕的變化
- IE6 IE7 IE8三個(gè)版本的CSS兼容速查手冊(cè)
- IE6下使用CSS定義DIV高度行之有效的辦法
- 技術(shù)前沿 一段JS代碼輕松解決IE6-IE8的兼容性問(wèn)題

















