Lucas Phillip Postado Setembro 15, 2008 Denunciar Share Postado Setembro 15, 2008 (editado) Aew pessoal,alguém sabe me explicar porque esse css não funciona no IE6 mas funciona no resto dos navegadores? Eu quero que quando o mouse passar por cima de um <TR>, ele mude de cor...ps: ignorem as \" é porque tah em phpCSS:#contents tr:hover { background-color:#00ff99; } #contents .c1 { background-color:#cccccc; } HTML: <div id=\"contents\"> <table width=\"90%\" border=\"0\"> <tr class=\"c1\" onclick=\"x\"> <td>blablabla</td> </tr> </table> </div>vlw! :) Editado Setembro 15, 2008 por Lucas Phillip Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 TibumWeb Postado Setembro 16, 2008 Denunciar Share Postado Setembro 16, 2008 Então isso nunca vai funcionar no IE6 e anteriores, porque nessa versão o comando hover só funciona emlinks (<a>) só nas versões mais recentes que tiveram a brilhante idéia de usar esse comando para qualquer elemento HTML.Abaixo eu uso esse comentário condicional que só é executado pelo IE6, nele possui javascript que utilizei pra ter o mesmo efeito em listas (<ul><li>) aí você altera para usar em (<tr><td>).<!--[if lte IE 6]> <script> function DOMgetElementsByClassName($node,$className){ /* Description: retorna um array com todos os elementos dentro de $node que possuam a classe indicada em $className Versão: 1.0 - 30/08/2006 Author: Micox - Náiron J.C.G - micoxjcg@yahoo.com.br Site: http://elmicox.blogspot.com Não retire estas informações pra não infringir direitos autorais! */ var $node, $atual, $className, $retorno = new Array(), $novos = new Array(); $retorno = new Array(); for (var $i=0;$i<$node.childNodes.length;$i++){ $atual = $node.childNodes[$i]; if($atual.nodeType==1){// 1 = XML_ELEMENT_NODE $classeAtual = $atual.className; if(new RegExp("\\b"+$className+"\\b").test($classeAtual)){ $retorno[$retorno.length] = $atual; } if($atual.childNodes.length>0){ $novos = DOMgetElementsByClassName($atual,$className); if($novos.length>0){ $retorno = $retorno.concat($novos); } } } } return $retorno; } function addEvent(obj, evType, fn){ //adiciona evento, versao crossbrowser //retirado de http://elcio.com.br/crossbrowser/#7 if (obj.addEventListener){ obj.addEventListener(evType, fn, true)} if (obj.attachEvent){ obj.attachEvent("on"+evType, fn)} } function ativaHover(classe) { //ativa o hover para elementos n?o links, por causa de bug do IE //retirado de http://www.maujor.com/tutorial/ddownmenu-a.php var pais = DOMgetElementsByClassName(document.body,classe); for (var j=0; j<pais.length; j++) { var sfEls = pais[j].getElementsByTagName("LI"); for (var i=0; i<sfEls.length; i++) { sfEls[i].onmouseover=function() { this.className+=" over"; } sfEls[i].onmouseout=function() { this.className=this.className.replace(new RegExp(" over\\b"), ""); } } } } addEvent(window,"load",function () { ativaHover("menu"); }); </script> <![endif]--> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Lucas Phillip Postado Setembro 16, 2008 Autor Denunciar Share Postado Setembro 16, 2008 E mais uma vez eu agarro no IE6 :wacko: aiai...Vlw ae pela ajuda! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Lucas Phillip
Aew pessoal,
alguém sabe me explicar porque esse css não funciona no IE6 mas funciona no resto dos navegadores? Eu quero que quando o mouse passar por cima de um <TR>, ele mude de cor...
ps: ignorem as \" é porque tah em php
CSS:
HTML:vlw! :)
Editado por Lucas PhillipLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.