2011-12-30 45 views
1

我正在设计一个严格的DOCTYPE的HTML页面,并在我的页面中有一个表单元素。css悬停在IE中的元素问题

我想要做的是当鼠标触摸我的表单时更改输入框的背景颜色。我已经使用css:hover选择器在表单标签上完成了这项工作,但问题是IE只能理解悬停在“a”标签上!

我GOOGLE了我的问题,我发现是:使用HTC文件

  • ;
  • 使用javascript在元素上创建悬停类;
  • 创建一个大的“a”标签并将其中的所有元素;

但我不想做任何这些解决方案!

在IE中解决这个问题没有更好的办法吗?

我的HTML代码:

<form id="footer-search-form" title="Search" action="#action"> 
    <fieldset> 
     <input type="text" class="footer-search-input" id="q" name="Search"></input> 
     <input type="button" class="footer-search-button" title="Search" value="Search"></input> 
    </fieldset> 
</form> 

我的CSS代码:

#footer-search-form:hover .footer-search-button { background-color: #fff; } 
#footer-search-form:hover .footer-search-input { background-color: #fff; } 

更新:和搜索我做到了用JS小时后:

onmouseover="this.setAttribute(document.all?'className':'class','footer-search-hovered');" onmouseout="this.removeAttribute(document.all?'className':'class','footer-search-hovered');"

.footer-search-hovered .footer-search-input, .footer-search-hovered .footer-search-button { background-color: #fff !important; } /* For IE6 compatibility */ 

我恨它,但似乎也没有更好的办法...

+1

为什么你不想使用'.htc'修复? http://peterned.home.xs4all.nl/csshover.html – thirtydot 2011-12-31 00:26:00

+0

我有一些'.htc'修复不好的经历。大多数时候他们通过创建另一个复杂的问题来解决一个简单的问题! – 2011-12-31 01:00:56

回答

0

IE已任一元素,因为IE8(或甚至IE7支持:hover?我不记得了),已经发布了三年多了。无可否认,有太多的人仍然使用IE6(主要是因为IE没有自动更新功能 - 它需要一个真正的),但是对于像这种美学效果这样简单的事情,您真的不需要担心老的支持文物。

+0

我的问题是在IE6中。它在更新版本的IE中工作。 – 2011-12-31 00:06:52

+0

就像我说过的,IE6不受许多网站的支持,因为它应该是。如果你想支持IE6,为什么不去全长,并使其在IE1中工作? – 2011-12-31 00:07:35

+0

请停止取笑我吧!我讨厌IE,我不得不花费时间来修复我在IE中的页面错误的时间比我花在编写代码上的时间要多得多。我的老板迫使我使它与IE6兼容,因为这个愚蠢的浏览器访问率很高! – 2011-12-31 00:12:28

2

你真的只会遇到麻烦if your users are using IE6。现在大多数网络开发者甚至不会为这种旧浏览器提供支持,所以我不担心它。

+0

当然,如果我打算设计自己的网页,我会完全忽略所有版本的Internet Explorer。但不幸的是,我不得不设计这个页面来处理所有浏览器,甚至IE6。 – 2011-12-31 00:02:30

+0

我会咨询谁告诉你发展到IE6,并告诉他们[这真的不值得](http://www.ie6countdown.com/)。关于回答问题;不用担心,这里你去:http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work – Wex 2011-12-31 00:13:03