Ir para conteúdo
Fórum Script Brasil
  • 0

CSS no IE6 não funciona


Lucas Phillip

Pergunta

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:

#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 por Lucas Phillip
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

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]-->

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...