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

Ocultar itens do menu


claytonprog

Pergunta

Pessoal!

É o seguinte:

tenho um menu dinâmico com 4 níveis gostaria que ocultasse o <li> para que o menu não apareça caso não haja no banco o item correspondente.

segue o código

<link type="text/css" href="menu.css" rel="Stylesheet" />


<div id="nav">


<ul>

<li><a href="#">Selecione a Categoria</a>
    
    <!-- Categoria 1º nível ---->
   
    <ul>  
    <?php
            
    include "../connections/conexao.php";                    
                    
    $SQL = "SELECT * FROM categorias ORDER BY categoria asc limit 80";
    $query = mysql_query($SQL);
                    
    while($row = mysql_fetch_array($query)) {
                    
    $categoria = $row['categoria'];
    $id = $row['id'];
                    
    ?>
        
        <li><a href="#"><? echo $categoria; ?></a>        
         
          <!-- Início Sub-Categoria 2º nível ---->

        <ul>
        
         <?php
                    
         $SQL9 = "SELECT * FROM sub_categorias where id_categoria='$id' ORDER BY subcategoria asc";
         $query9 = mysql_query($SQL9);
                    
         while($row9 = mysql_fetch_array($query9)) {
                    
         $sub_categoria = $row9['subcategoria'];
         $id_sub_categoria = $row9['id'];             
            
                    
        ?>
        
                      
        <li><a href="#"><? echo $sub_categoria; ?></a>
        
               <!-- Início dos Itens 3º nível ---->
               
                <ul>
                
                 <?php                 
                                    
                 $SQL8 = "SELECT * FROM sub_sub_categorias where id_sub_categoria='$id_sub_categoria' ORDER BY sub_sub_categoria asc";
                 $query8 = mysql_query($SQL8);
                            
                 while($row8 = mysql_fetch_array($query8)) {
                            
                 $sub_sub_categoria = $row8['sub_sub_categoria'];
                 $id_sub_sub_categoria = $row8['id'];                    
                            
                ?>
                        
                    <li><a href="#"><? echo $sub_sub_categoria; ?></a>
                    
                     <!-- Início do Sub-Itens 4º nível ---->
                    
                     <ul>
                     
                      <?php                 
                                    
                     $SQL7 = "SELECT * FROM sub_itens where id_sub_sub_categoria='$id_sub_sub_categoria' ORDER BY sub_item asc";
                     $query7 = mysql_query($SQL7);
                                
                     while($row7 = mysql_fetch_array($query7)) {
                                
                     $sub_item = $row7['sub_item'];
                     $id_sub_sub_categoria = $row7['id'];                    
                                
                    ?>
                     
                      <li><a href="#"><? echo $sub_item; ?></a></li>
                    
                    <?
                    }
                    ?>
                      
                    </ul>  
                    
                     <!-- Final do Sub-Itens 4º nível ---->              
                    
                    
                    </li>
                
                 <?
                 }
                ?>    
                
                </ul>
                
                <!-- Final dos Itens 3º nível ---->
               
        
        </li>
        
        
        <?
         }
        ?>    
        </ul>
        
            
         <!-- Final Sub-Categoria 2º nível ---->
        
       <?
        }
        ?>
    </li>
    
    </ul>
    
         <!-- Final Categoria 1º nível ---->

</li>

</ul>


</div>
O css:
#nav {
        float: left;
        width:auto;
         font: bold 12px Arial, Helvetica, Sans-serif;
        border: 1px solid #121314;
        border-top: 1px solid #2b2e30;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        overflow: hidden;
}

#nav ul {
width:auto;
    margin:0;
    padding:0;
    list-style:none;
}

#nav ul li {
    float:left;
}

#nav ul li a {
       float: left;
    color:#d4d4d4;
        padding: 10px 20px;
    text-decoration:none;
        background:#3C4042;
     background: -webkit-gradient( linear, left bottom, left top, color-stop(0.09, rgb(59,63,65)), color-stop(0.55, rgb(72,76,77)), color-stop(0.78, rgb(75,77,77)) );
    background: -moz-linear-gradient( center bottom, rgb(59,63,65) 9%, rgb(72,76,77) 55%, rgb(75,77,77) 78% );
    background: -o-linear-gradient( center bottom, rgb(59,63,65) 9%, rgb(72,76,77) 55%, rgb(75,77,77) 78% );
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.1) inset, 0 0 5px rgba(0, 0, 0, 0.1) inset;
    border-left: 1px solid rgba(255, 255, 255, 0.05);
        border-right: 1px solid rgba(0,0,0,0.2);
     text-shadow: 0 -1px 1px rgba(0, 0, 0, 0.6);
}

#nav ul li a:hover,
#nav ul li:hover > a {
        color: #252525;
        background:#3C4042;
    background: -webkit-gradient( linear, left bottom, left top, color-stop(0.09, rgb(77,79,79)), color-stop(0.55, rgb(67,70,71)), color-stop(0.78, rgb(69,70,71)) );
    background: -moz-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
    background: -o-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
        text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2), 0 -1px #000;

}

#nav li ul a:hover, 
#nav ul li li:hover > a  {
    color: #2c2c2c;
      background: #5C9ACD;
    background: -webkit-gradient( linear, left bottom, left top, color-stop(0.17, rgb(61,111,177)), color-stop(0.51, rgb(80,136,199)), color-stop(1, rgb(92,154,205)) );
    background: -moz-linear-gradient( center bottom, rgb(61,111,177) 17%, rgb(80,136,199) 51%, rgb(92,154,205) 100% );
    background: -o-linear-gradient( center bottom, rgb(61,111,177) 17%, rgb(80,136,199) 51%, rgb(92,154,205) 100% );
        border-bottom: 1px solid rgba(0,0,0,0.6);
        border-top: 1px solid #7BAED9;
        text-shadow: 0 1px rgba(255, 255, 255, 0.3);
}



#nav li ul {
        background:#3C4042;
        background-image: -webkit-gradient( linear, left bottom, left top, color-stop(0.09, rgb(77,79,79)), color-stop(0.55, rgb(67,70,71)), color-stop(0.78, rgb(69,70,71)) );
        background-image: -moz-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
        background-image: -o-linear-gradient( center bottom, rgb(77,79,79) 9%, rgb(67,70,71) 55%, rgb(69,70,71) 78% );
        border-radius: 0 0 10px 10px;
        -moz-border-radius: 0 0 10px 10px;
        -webkit-border-radius: 0 0 10px 10px;
        left: -999em;
        margin: 35px 0 0;
        position: absolute;
        width: 160px;
        z-index: 9999;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.4) inset; 
        -moz-box-shadow: 0 0 15px rgba(0, 0, 0, 0.4) inset; 
        -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.4) inset; 
        border: 1px solid rgba(0, 0, 0, 0.5);
}

#nav li:hover ul {
        left: auto;
}

#nav li ul a {
        background: none;
        border: 0 none;
        margin-right: 0;
        width: 120px;
        box-shadow: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        border-bottom: 1px solid transparent;
        border-top: 1px solid transparent;
}

#nav li li ul {
        margin: -1px 0 0 160px;
        -webkit-border-radius: 0 10px 10px 10px;
        -moz-border-radius: 0 10px 10px 10px;
        border-radius: 0 10px 10px 10px;
        visibility:hidden;
}

#nav li li:hover ul {
        visibility:visible;
}

#nav ul ul li:last-child > a {
    -moz-border-radius:0 0 10px 10px;
    -webkit-border-radius:0 0 10px 10px;
    border-radius:0 0 10px 10px;
}

#nav ul ul ul li:first-child > a {
    -moz-border-radius:0 10px 0 0;
    -webkit-border-radius:0 10px 0 0;
    border-radius:0 10px 0 0;
}

Link 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.

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...