Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Celinho

Usando menu active

Recommended Posts

Eu quero fazer com que o hover permaneça no menu, dependendo da página que eu esteja, e quando eu mudar de página ele passe para o outro item do menu ficando fixo o hover. Alguem pode me ajudar?

 

<div id="menu">
<ul>
   <li><a href="<?php echo $urlbase_config; ?>" title="Início">Início</a></li>
   <li><a href="<?php echo $urlbase_config; ?>servicos" title="Serviços ">Serviços</a></li>
   <li><a href="<?php echo $urlbase_config; ?>trabalhos" title="Trabalhos">Trabalhos</a></li>
   <li><a href="<?php echo $urlbase_config; ?>contato" title="Fale conosco">Contato</a></li>
</ul>
</div><!--menu-->

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cria uma ID, com as propriedades do hover, em cada pagina, poe no menu ativo essa ID...

 

<li id="active"><a href="<?php echo $urlbase_config; ?>" title="Início">Início</a></li>

 

ou

 

<li><a href="<?php echo $urlbase_config; ?>" id="active" title="Início">Início</a></li>

 

Dependendo do seu CSS, você adapta da forma correta

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poste um link com o que você tentou fazer para que alguém possa tentar ajudar :thumbsup:

Tentei fazendo isso mas não consegui =/ ... alguem tem alguma outra dica?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Celinho,

 

você precisa setar um nome pra página e verificar no menu qual a página o usuário está.

 

<?php
$pagina = "home";
?>
<ul>
<li>
<a href="#" class="<?=($pagina == 'home'? 'active' : '')?>">Home</a>
</li>

<li>
<a href="#" class="<?=($pagina == 'empresa'? 'active' : '')?>">Empresa</a>
</li>

<li>
<a href="#" class="<?=($pagina == 'contato'? 'active' : '')?>">Contato</a>
</li>
</ul>

 

Não testei, mas a ideia é essa ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, é muito simples o que você quer. Vamos supor o seguinte:

<ul>
   <li><a href="#">Home</a></li>
   <li><a href="#">Sobre</a></li>
   <li><a href="#">Serviços</a></li>
   <li><a href="#">Contato</a></li>
</ul>

Ai, em cada elemento da lista você adiciona uma classe. active por exemplo, e na sua CSS você estiliza diferente das demais.

<ul>
   <li><a href="#">Home</a></li>
   <li><a href="#">Sobre</a></li>
   <li><a href="#">Serviços</a></li>
   <li class="active"><a href="#">Contato</a></li>
</ul>
<style>
li.active {color: #F00;}
</style>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema não é nem o active em si, mas fazer ele 'ascender/apagar' dependendo da página... sei que pra isso tenho que usar php, só que ja pesquisei e nada de resolver isso ...

 

se eu coloco uma class em cada elemento da lista, todos os itens do menu ascendem.. e como o menu é dinâmico e não separado por páginas complica =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá velho, você pode fazer dessa forma:

 

Arquivo index.php:

 

<?
#Essa é a página q será carregada...
if(!isset($_GET['conteudo']) OR ($_GET['conteudo'])=='' OR !file_exists(($_GET['conteudo']).'.php'))
  $conteudo='main';
else
  $conteudo = $_GET['conteudo'];
?>
<html>
<body>
<div class="container">
    <?php include 'topo.php';?> #Aonde tá o menu, cabeçalho etc...
    <?php include $conteudo.'.php';?>#conteudo da página...
</div>

</body>
</html>

 

 

Menu:

 

<style>
  active {color: #F00;}
</style>

<ul>
   <li><a href="index.php?conteudo=main" class="<?=($conteudo == 'main') ? 'active': '';?>" >Home</a></li>
   <li><a href="index.php?conteudo=about" class="<?=($conteudo == 'about') ? 'active': '';?>" >Sobre</a></li>
   <li><a href="index.php?conteudo=servicos" class="<?=($conteudo == 'servicos') ? 'active': '';?>" >Serviços</a></li>
   <li><a href="index.php?conteudo=contato" class="<?=($conteudo == 'contato') ? 'active': '';?>">Contato</a></li>
</ul>

 

 

Se você utilizar htaccess para chamar os links fica mais legivel o código, acho que assim você consegue resolver seu problema....

 

Dá uma estudada em htaccess depois.....

 

 

Abraço !!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não deu :(

 

eu tentei usando o código assim

 

<a href="<?php echo $urlbase_config; ?>"<?php if($_GET['$urlbase_config']==""){ echo 'class="active"';} ?>>Início</a>

 

Só que não consegui atribuir um valor para a página, se eu deixo em branco até da certo, mas não ascende/apaga :s ... Só preciso atribuir um valor para as páginas que dará certo, acredito eu... Essa é minha index, tentei usando as variaveis dela mas não consegui também

 

<?php include_once("header.php"); ?>

<?php
$url = $_GET['url'];
$urlE = explode('/', $url);
$arquivo = $urlE['0'];
$post = $urlE['1'];

$paginas = array('home', 'trabalhos', 'contato');

if(isset($post) && $post != ''){
include "single.php";
}elseif(isset($arquivo) && in_array($arquivo, $paginas)){
include "$arquivo.php";	
}elseif(isset($arquivo) && $arquivo == ''){
include "home.php";		
}else{

}

?>

<?php include_once("footer.php"); ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.