Como criar um menu suspenso responsivo usando HTML e CSS no Blogger

Como funciona a estrutura de um menu responsivo no Blogger

Para criar um menu suspenso responsivo usando HTML e CSS no Blogger, você precisa de uma estrutura semântica baseada nas tags <nav>, <ul> e <li>, acompanhada por seletores CSS que utilizam a pseudo-classe :hover para controlar os submenus no desktop e a técnica do checkbox invisível (conhecida como checkbox hack) para alternar a exibição do menu de hambúrguer em telas menores. Essa solução dispensa bibliotecas pesadas ou rotinas em JavaScript, garantindo alta velocidade de carregamento, total compatibilidade com layouts mobile e fácil integração através do widget de HTML/JavaScript do painel do Blogger ou da edição direta do código XML do tema.

Neste guia prático e aprofundado, você aprenderá exatamente como construir do zero um menu de navegação moderno, estilizado e fluido. Explicaremos os fundamentos da arquitetura da informação, o código HTML estruturado, as regras CSS responsáveis pela responsividade, os métodos corretos de instalação no Blogspot e técnicas avançadas para resolver sobreposições visuais (problemas de z-index) e otimizar a experiência do leitor em smartphones e tablets.

Por que substituir o menu padrão do Blogger por um menu customizado em HTML e CSS?

O Blogger disponibiliza nativamente um gadget de lista de páginas (PageList), que permite inserir links simples no topo do layout. No entanto, o recurso nativo possui limitações severas de personalização, não oferece suporte nativo a submenus em cascata (dropdowns de múltiplos níveis) em todos os temas e costuma apresentar inconsistências visuais quando acessado por dispositivos móveis.

A continuidade natural deste raciocínio aparece em Tutorial prático para colocar um formulário de contato oficial no Blogspot, onde o próximo aspecto do tema é aprofundado de forma específica.

Implementar um menu suspenso personalizado traz benefícios imediatos para a estrutura técnica e editorial do seu projeto:

  • Melhoria na usabilidade (UX): Visitantes conseguem encontrar categorias específicas, artigos populares e páginas institucionais com menos cliques, reduzindo a taxa de rejeição do blog.
  • Otimização de SEO interno: Um menu bem estruturado distribui a autoridade de linkagem interna (link juice) para as suas principais categorias e etiquetas (labels), ajudando buscadores a rastrear o conteúdo de forma eficiente. Ao aplicar técnicas adequadas de otimização de SEO para artigos publicados no Blogger, o menu torna-se um pilar central na hierarquia do site.
  • Carregamento ultra-rápido: Por utilizar apenas código HTML puro e estilização via CSS (sem depender de frameworks pesados como Bootstrap ou bibliotecas como jQuery), o menu não bloqueia a renderização da página, preservando ótimas pontuações nas métricas do Core Web Vitals.
  • Design 100% responsivo: A navegação adapta-se automaticamente a qualquer tamanho de tela, garantindo que usuários de celulares naveguem com o mesmo conforto dos usuários de computadores de mesa.
  • Total flexibilidade técnica: Você tem controle absoluto sobre cores, tipografia, espaçamentos, sombras, animações de transição e disposição dos links, combinando perfeitamente com a identidade visual ao instalar templates gratuitos no Blogspot ou temas customizados.

Como funciona um menu suspenso responsivo sem JavaScript?

Muitos tutoriais antigos recomendam a inclusão de scripts em JavaScript para controlar a abertura e o fechamento de menus no celular. Embora o JavaScript seja uma ferramenta poderosa, o uso excessivo de scripts no Blogger pode impactar o tempo de interatividade da página (INP e TBT), além de correr o risco de quebrar caso ocorra algum conflito entre plugins.

A solução mais eficiente e segura para o Blogger baseia-se exclusivamente no ecossistema HTML5 e CSS3:

  1. Efeito Dropdown no Desktop: Os submenus permanecem oculta-dos por padrão através de propriedades como display: none ou combinação de opacity: 0 e visibility: hidden. Quando o usuário passa o ponteiro do mouse sobre o item pai (li:hover), o CSS altera o estado do submenu para visível (display: block ou opacity: 1), criando o efeito suspenso instantâneo ou com transição suave.
  2. Alternância Mobile (Checkbox Hack): Para dispositivos móveis com tela sensível ao toque onde o evento de passar o mouse não existe da mesma forma, utiliza-se um campo do tipo caixa de seleção (<input type="checkbox" id="menu-toggle">) associado a uma etiqueta visual (<label for="menu-toggle">) estilizada como o famoso "ícone de hambúrguer" (três listras horizontais). O campo do checkbox permanece oculto. Quando o leitor toca no ícone de hambúrguer, o checkbox é marcado. O CSS detecta essa mudança de estado com o seletor de irmão adjacente (#menu-toggle:checked ~ ul) e exibe a lista principal de links na vertical.

Estrutura HTML completa do menu suspenso

O primeiro passo prático é construir o esqueleto em HTML. O código utiliza tags semânticas para que leitores de tela e motores de busca reconheçam a seção como a navegação principal do blog.

Abaixo está o código HTML completo que serve de base para o menu suspenso:

<nav class="menu-navegacao">
  <!-- Checkbox invisível para o controle mobile -->
  <input type="checkbox" id="menu-toggle" class="checkbox-toggle" />
  
  <!-- Botão hambúrguer visível apenas em telas menores -->
  <label for="menu-toggle" class="btn-hamburguer" aria-label="Abrir menu de navegação">
    <span class="barrinha"></span>
    <span class="barrinha"></span>
    <span class="barrinha"></span>
  </label>

  <!-- Lista principal de navegação -->
  <ul class="lista-menu">
    <li><a href="/">Início</a></li>
    
    <!-- Item com submenu suspenso (Dropdown) -->
    <li class="tem-submenu">
      <a href="#" class="link-pai">Categorias <span class="setinha">&#9662;</span></a>
      <ul class="submenu">
        <li><a href="/search/label/Tutoriais">Tutoriais</a></li>
        <li><a href="/search/label/SEO">Dicas de SEO</a></li>
        <li><a href="/search/label/Monetizacao">Monetização</a></li>
        <li><a href="/search/label/Templates">Templates</a></li>
      </ul>
    </li>

    <li class="tem-submenu">
      <a href="#" class="link-pai">Recursos <span class="setinha">&#9662;</span></a>
      <ul class="submenu">
        <li><a href="/p/ferramentas.html">Ferramentas Úteis</a></li>
        <li><a href="/p/downloads.html">Downloads Gratuitos</a></li>
      </ul>
    </li>

    <li><a href="/p/sobre.html">Sobre o Blog</a></li>
    <li><a href="/p/contato.html">Contato</a></li>
  </ul>
</nav>

Entendendo a anatomia da marcação HTML

Para garantir que o código funcione corretamente sem falhas de renderização no Blogger, é importante entender o papel de cada elemento utilizado:

  • <nav class="menu-navegacao">: Define o bloco semântico de navegação. Informa aos mecanismos de busca que os links contidos naquele trecho formam a estrutura primária do site.
  • <input type="checkbox" id="menu-toggle">: Funciona como um comutador do estado "aberto/fechado" no mobile. Ele fica completamente escondido no CSS desktop e mobile.
  • <label for="menu-toggle">: O atributo for conecta diretamente a etiqueta ao ID do checkbox. Ao clicar na label, o estado do checkbox é alterado sem necessidade de script.
  • <ul class="lista-menu">: A lista não ordenada principal que abriga os itens de primeiro nível.
  • <li class="tem-submenu">: Classe atribuída especificamente aos itens que possuem uma segunda lista (<ul class="submenu">) embutida. Essa diferenciação permite aplicar seletores CSS exclusivos para exibir o indicador visual de seta e acionar o efeito suspenso.
  • /search/label/NomeDaCategoria: É o formato padrão de URL utilizado pelo Blogger para filtrar postagens por marcadores. Substitua "NomeDaCategoria" pela etiqueta exata configurada nas suas postagens.

Código CSS para estilização desktop e funcionamento do dropdown

Agora que o HTML está definido, o CSS será responsável pela transformação visual, layout alinhado, cores, posicionamento absoluto dos submenus e efeitos de sobreposição.

Abaixo está o bloco de código CSS que deve ser aplicado ao seu layout:

/* Reset básico para o menu */
.menu-navegacao {
  background-color: #1e293b;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  position: relative;
  width: 100%;
  z-index: 999;
}

.menu-navegacao *, 
.menu-navegacao *::before, 
.menu-navegacao *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

/* Oculta o checkbox de controle */
.checkbox-toggle {
  display: none;
}

/* Esconde o botão hambúrguer no desktop */
.btn-hamburguer {
  display: none;
  cursor: pointer;
  padding: 15px 20px;
}

.btn-hamburguer .barrinha {
  background-color: #ffffff;
  display: block;
  height: 3px;
  margin: 4px 0;
  width: 25px;
  transition: all 0.3s ease;
}

/* Estilização da lista principal (Desktop) */
.lista-menu {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.lista-menu > li {
  position: relative;
}

.lista-menu a {
  color: #f8fafc;
  display: block;
  font-size: 15px;
  font-weight: 500;
  padding: 16px 20px;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.lista-menu a:hover {
  background-color: #334155;
  color: #38bdf8;
}

.setinha {
  font-size: 11px;
  margin-left: 4px;
}

/* Funcionamento do Submenu Suspenso (Dropdown) */
.submenu {
  background-color: #0f172a;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3);
  display: none;
  left: 0;
  list-style: none;
  min-width: 220px;
  position: absolute;
  top: 100%;
  z-index: 1000;
}

.submenu li {
  width: 100%;
}

.submenu a {
  border-bottom: 1px solid #1e293b;
  color: #cbd5e1;
  font-size: 14px;
  padding: 12px 18px;
}

.submenu a:hover {
  background-color: #1e293b;
  color: #ffffff;
  padding-left: 22px; /* Efeito leve de deslocamento */
}

/* Exibe o submenu ao passar o mouse no Desktop */
.lista-menu li.tem-submenu:hover > .submenu {
  display: block;
}

Lógica de posicionamento CSS para menus suspensos

O segredo para fazer um menu suspenso funcionar sem falhas de alinhamento está no relacionamento entre o elemento pai e o elemento filho através da propriedade de posicionamento do CSS:

  • .lista-menu > li { position: relative; }: Define o item de lista pai como o ponto de ancoragem de referência. Todo elemento posicionado de forma absoluta dentro dele responderá às suas coordenadas.
  • .submenu { position: absolute; top: 100%; left: 0; }: Posiciona a caixa do submenu exatamente abaixo da borda inferior do item pai (top: 100%), alinhada à margem esquerda (left: 0).
  • z-index: 1000: Garante que o painel suspenso flutue acima dos demais elementos da página, como slides, imagens de artigos, banners do Google AdSense ou a barra lateral do blog.

Tornando o menu responsivo com CSS Media Queries

Em telas de smartphones ou tablets (geralmente abaixo de 768 pixels de largura), o espaço horizontal é limitado. Tentar espremer vários links lado a lado gera quebras de linha indesejadas e dificulta o toque com os dedos.

Para resolver isso, utilizamos regras de requisição de mídia (media queries) que reconfiguram a estrutura para um formato vertical expansível com botão de acionamento.

Adicione o seguinte trecho de código CSS logo abaixo do CSS anterior:

/* Estilos Responsivos para Telas Menores (Até 768px) */
@media screen and (max-width: 768px) {
  
  /* Exibe o botão hambúrguer */
  .btn-hamburguer {
    display: block;
  }

  /* Oculta a lista de links por padrão no mobile */
  .lista-menu {
    background-color: #1e293b;
    display: none;
    flex-direction: column;
    width: 100%;
  }

  .lista-menu > li {
    width: 100%;
  }

  .lista-menu a {
    border-top: 1px solid #334155;
    padding: 14px 20px;
  }

  /* REVELA O MENU AO MARCAR O CHECKBOX */
  .checkbox-toggle:checked ~ .lista-menu {
    display: flex;
  }

  /* Ajustes do Submenu no Mobile (Modo Sanfona) */
  .submenu {
    box-shadow: none;
    display: none;
    position: static; /* Remove o posicionamento absoluto no mobile */
    width: 100%;
  }

  .submenu a {
    background-color: #0f172a;
    padding-left: 35px; /* Indentação visual para subitens */
  }

  /* Revela o submenu no clique/toque ou hover no mobile */
  .lista-menu li.tem-submenu:hover > .submenu,
  .lista-menu li.tem-submenu:focus-within > .submenu {
    display: block;
  }
}

Como o menu se comporta no celular?

Quando a largura do navegador é inferior a 768px, acontecem as seguintes transformações automáticas:

  1. O botão de três linhas (.btn-hamburguer) torna-se visível no canto superior do menu.
  2. A lista horizontal .lista-menu é convertida em um bloco vertical (flex-direction: column) e fica oculta.
  3. Ao tocar no ícone de hambúrguer, o checkbox é ativado, e a regra .checkbox-toggle:checked ~ .lista-menu torna a lista visível instantaneamente.
  4. Os submenus deixam de flutuar sobre o conteúdo (position: static) e passam a expandir verticalmente no estilo sanfona/empilhado, empurrando os itens de baixo suavemente para não sobrepor links de toque.

Como instalar o menu suspenso no Blogger passo a passo

Existem duas maneiras simples e eficientes de colocar este código para funcionar no seu blogspot. Escolha a opção que melhor se adapta ao seu nível de conhecimento técnico.

Método 1: Adicionar via Widget de HTML/JavaScript no Layout (Recomendado)

Este é o método mais prático, seguro e amigável. Ele não altera diretamente a estrutura do tema original e permite mover o menu facilmente pela interface do painel.

  1. Acesse o painel do Blogger e selecione o seu blog.
  2. No menu lateral esquerdo, clique na opção Layout.
  3. Procure pela seção reservada ao cabeçalho (geralmente chamada de Header, Navigation ou Cross-Column).
  4. Clique no botão + Adicionar um Gadget.
  5. Na janela que se abrirá, escolha a opção HTML/JavaScript.
  6. Deixe o campo Título em branco (para evitar que um texto feio apareça acima do menu).
  7. No campo Conteúdo, você deve colar todo o código HTML e CSS juntos. Para fazer isso, coloque todo o código CSS dentro de tags <style>...</style> antes do código HTML. Veja a estrutura abaixo:
<style>
  /* Cole aqui todo o código CSS mostrado nas seções anteriores */
  .menu-navegacao { background-color: #1e293b; ... }
  /* ... restante do CSS ... */
</style>

<!-- Cole aqui a estrutura HTML do menu -->
<nav class="menu-navegacao">
  <input type="checkbox" id="menu-toggle" class="checkbox-toggle" />
  <!-- ... restante do HTML ... -->
</nav>

Após colar o código combinado, clique em Salvar no gadget e, em seguida, clique no ícone de disco no canto inferior direito da tela de Layout para salvar as alterações do blog.

Método 2: Inserir diretamente no código XML do tema

Se você deseja integrar o menu diretamente ao código-fonte do modelo do Blogger para obter o máximo desempenho de carregamento, siga os passos abaixo:

  1. No painel do Blogger, vá em Tema.
  2. Clique na seta ao lado do botão "Personalizar" e selecione Fazer backup (passo fundamental de segurança para restaurar seu blog caso cometa algum erro).
  3. Clique novamente na seta e escolha Editar HTML.
  4. Clique dentro da caixa de código e pressione Ctrl + F (ou Cmd + F no Mac) para abrir a caixa de pesquisa interna.
  5. Pesquise pela tag </head>. Cole todo o código CSS (envolvido por tags <style>...</style>) imediatamente antes da tag </head>.
  6. Em seguida, pesquise pelo local do cabeçalho do blog (procure por termos como <header> ou class='header-wrapper').
  7. Cole o trecho de código HTML do menu logo abaixo do bloco de encerramento do cabeçalho.
  8. Clique no ícone de disquete (Salvar tema) no canto superior direito.

Dica de segurança: Se ao salvar o código XML do Blogger o painel retornar um erro de parsing XML referente ao CSS, envolva todo o trecho CSS em um bloco CDATA para evitar que os símbolos de menor e maior sejam interpretados incorretamente pelo motor do Blogger:

<style type="text/css">
/*<![CDATA[*/
  /* Seu código CSS entra aqui */
/*]]>*/
</style>

Customizações avançadas: cores, efeitos, ícones e barra fixa (Sticky)

Depois de instalar o menu funcional, você pode personalizar o design para deixá-lo em harmonia com as cores da sua marca ou adicionar funcionalidades extras de navegabilidade.

1. Criando um menu fixo no topo ao rolar a página (Sticky Menu)

Manter o menu visível durante toda a rolagem do leitor facilita o acesso imediato a outras páginas sem a necessidade de retornar ao topo do site. Para transformar seu menu em uma barra fixa, basta adicionar as seguintes propriedades à classe .menu-navegacao no seu CSS:

.menu-navegacao {
  position: sticky;
  top: 0;
  z-index: 9999;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
}

2. Personalizando cores e gradientes

Você pode facilmente alterar a paleta de cores padrão editando os valores hexadecimais no CSS. A tabela abaixo indica quais seletores devem ser modificados para ajustar cada elemento visual do menu:

Elemento do Menu Seletor CSS para Modificar Propriedades Recomendadas
Fundo do menu principal .menu-navegacao background-color ou background: linear-gradient(...)
Cor do texto dos links .lista-menu a color, font-family e font-size
Cor ao passar o mouse (Hover) .lista-menu a:hover background-color e color
Fundo da caixa de submenu .submenu background-color e border-radius
Linhas do botão hambúrguer mobile .btn-hamburguer .barrinha background-color e height

3. Criando submenus de segundo nível (Dropdown aninhado)

Caso o seu blog possua uma estrutura ampla com subcategorias detalhadas, você pode criar um segundo nível de submenu suspenso (um dropdown dentro de outro dropdown). Basta aninhar uma nova tag <ul class="submenu nivel-2"> dentro de um item de lista do primeiro submenu:

<!-- Exemplo de segundo nível em HTML -->
<li class="tem-submenu">
  <a href="#">Tecnologia &raquo;</a>
  <ul class="submenu nivel-2">
    <li><a href="/search/label/Smartphones">Smartphones</a></li>
    <li><a href="/search/label/Notebooks">Notebooks</a></li>
  </ul>
</li>

E no CSS desktop, ajuste o posicionamento para que o novo painel apareça ao lado do submenu anterior:

.submenu .nivel-2 {
  left: 100%;
  top: 0;
}

.submenu li:hover > .nivel-2 {
  display: block;
}

Comparativo: Menu Customizado HTML/CSS vs. Gadget Padrão do Blogger

A escolha entre usar a lista de páginas nativa do Blogger ou um menu customizado em HTML/CSS impacta diretamente o visual, o desempenho e a flexibilidade técnica do seu site. O comparativo a seguir detalha as principais diferenças:

Critério de Avaliação Menu Nativo do Blogger (PageList) Menu Customizado em HTML/CSS (Este Tutorial)
Suporte a Submenus (Dropdown) Inexistente ou limitado a poucos modelos específicos. Total suporte a múltiplos níveis em qualquer modelo de tema.
Responsividade Mobile Básica, com visual genérico e pouca personalização. Totalmente otimizada com formato hambúrguer intuitivo.
Impacto na Velocidade Gera estilos genéricos e dependências do sistema. Extremamente leve, sem dependência de bibliotecas externas.
Facilidade de Edição Visual Limitada às poucas opções do designer de temas. Controle total sobre cores, fontes, sombras e animações via CSS.
Organização por Marcadores (Labels) Requer adição manual de links um a um na interface. Permite estruturar e categorizar URLs dinâmicas com facilidade.
Acessibilidade e SEO Estrutura genérica de links. Tags semânticas (nav, ul, li) ideais para buscadores.

Otimização para SEO e arquitetura de navegação no Blogger

A criação do menu suspenso não deve atender apenas a critérios estéticos; ela desempenha um papel crucial na estratégia global do blog. Uma estrutura de navegação bem desenhada ajuda o Google a entender a hierarquia do seu conteúdo e melhora as métricas de engajamento do usuário.

Ao planejar a estrutura dos links do seu menu suspenso no Blogger, considere as seguintes práticas recomendadas:

  • Priorize os Marcadores (Labels) Mais Importantes: Destaque no menu principal as categorias centrais do seu nicho. Evite poluir o menu com dezenas de marcadores pouco relevantes. Mantenha entre 4 e 7 itens na barra principal.
  • Linkagem para Páginas institucionais relevantes: Inclua sempre links para páginas estáticas essenciais, como "Sobre", "Política de Privacidade" e "Contato". Ter acesso rápido a esses dados reforça os critérios de autoridade e confiabilidade (E-E-A-T) exigidos pelos mecanismos de busca, o que é fundamental ao buscar oportunidades para ativar o Google AdSense e monetizar seu blog no Blogger.
  • Aproveitamento para Sitelinks no Google: Quando seu blog ganha autoridade no buscador, o Google costuma exibir links de atalho (sitelinks) abaixo do resultado principal nos resultados de pesquisa. Ter um menu em HTML semântico com links limpos é o fator mais decisivo para conquistar esse recurso de destaque.
  • Integração com Métricas de Tráfego: Monitore o comportamento dos leitores no menu configurando eventos de clique. Após realizar o passo a passo para conectar o Google Analytics 4 às páginas do Blogger, você poderá analisar quais categorias e submenus recebem mais interações do público.
  • Endereços Seguros (HTTPS): Verifique se todos os links inseridos nos atributos href="..." utilizam o protocolo seguro https://. Se você ainda tem dúvidas sobre o certificado do seu endereço, consulte nosso guia sobre como habilitar o certificado SSL de segurança gratuitamente no Blogspot.

Resolução de problemas comuns e erros frequentes

Durante a instalação e personalização do menu suspenso no Blogger, é comum encontrar pequenos imprevistos visuais. Veja como resolver os erros mais frequentes:

1. O submenu fica escondido atrás de imagens, vídeos ou gadgets do blog

Esse problema ocorre devido ao empilhamento de camadas no navegador (conflito de z-index). Para resolver, localize a classe .menu-navegacao e a classe .submenu no seu CSS e certifique-se de que o valor de z-index seja suficientemente alto (por exemplo, z-index: 9999;). Além disso, verifique se nenhum elemento pai na estrutura do template possui a propriedade overflow: hidden;, pois ela corta qualquer elemento filho que flutue fora dos limites da caixa.

2. O submenu fecha muito rápido quando tento mover o mouse até os links

Isso acontece quando existe um espaço vazio (lacuna de pixels) entre o item da lista pai e a caixa do submenu. Ao mover o ponteiro do mouse sobre esse espaço, o navegador entende que o usuário saiu do elemento e dispara o evento de ocultar o menu. Para corrigir, evite usar margens superiores (margin-top) no submenu. Utilize a propriedade top: 100%; e adicione espaçamento interno (padding) nos links para criar uma área de contato contínua.

3. O botão de hambúrguer não abre o menu no celular

Se ao tocar no ícone de três linhas nada acontecer no smartphone, verifique se o atributo id="menu-toggle" do checkbox é exatamente idêntico ao valor do atributo for="menu-toggle" contido na tag <label>. Qualquer diferença de digitação ou caractere maiúsculo quebrará a associação entre a etiqueta e o comutador.

4. Os links de categorias retornam erro de "Página não encontrada"

As URLs de marcadores no Blogger diferenciam letras maiúsculas de minúsculas e acentuação. Se a sua etiqueta no painel de postagens se chama "Avisos", o link no menu deve ser obrigatoriamente /search/label/Avisos. Caso escreva /search/label/avisos (com "a" minúsculo), o Blogger não encontrará as postagens associadas.

5. O menu desalinha ao usar um domínio personalizado

Se você trocou o endereço padrão do Blogspot por uma URL própria, certifique-se de utilizar caminhos relativos nos links internos do menu (como /p/sobre.html ou /search/label/Tutorial) em vez de URLs absolutas com o antigo subdomínio .blogspot.com. Essa prática garante transição perfeita ao configurar um domínio próprio no Blogger.

Perguntas frequentes (FAQ)

Confira as respostas diretas para as dúvidas mais comuns sobre a implementação de menus suspensos e responsivos no Blogger:

Como criar um menu suspenso no Blogger sem usar JavaScript?

Para criar um menu suspenso sem JavaScript, utiliza-se a estrutura semântica HTML de listas (<ul> e <li>) e estilização CSS. No desktop, o submenu é exibido com a pseudo-classe :hover. No mobile, utiliza-se a técnica do checkbox hack, associando um <input type="checkbox"> oculto a um <label> para alternar a exibição da lista via seletor CSS :checked.

O menu suspenso responsivo funciona em qualquer template do Blogger?

Sim, esta solução em HTML e CSS puro é universal e funciona em qualquer modelo de template do Blogger, seja um tema nativo do sistema (Contempo, Emporio, Soho, Simple) ou um modelo moderno baixado de sites de terceiros. Basta colar o código através de um gadget de HTML/JavaScript no layout.

Como adicionar subitens (categorias filhas) dentro do menu suspenso?

Para adicionar subitens, insira uma nova lista não ordenada (<ul class="submenu">) dentro do elemento de lista (<li>) que representa a categoria pai. Cada <li> interno receberá o link correspondente para a página ou marcador desejado.

Por que o meu submenu fica coberto pelas postagens ou banners do blog?

Esse problema é causado pelo valor de camada do elemento (z-index). Para corrigir, defina a propriedade z-index: 9999; na classe do menu e certifique-se de que o container do cabeçalho do template não possua a regra CSS overflow: hidden; ativada.

Como colocar o link de uma categoria específica do Blogger no menu?

Acesse o seu blog, clique no marcador desejado na barra lateral para abrir a página da categoria e copie o final do endereço gerado. O formato padrão de link de categoria no Blogger é /search/label/NomeDaEtiqueta. Insira esse caminho no atributo href do item do menu.

Usar um menu customizado em HTML e CSS deixa o blog mais lento?

Não. Por não utilizar arquivos JavaScript externos, bibliotecas pesadas ou requisições adicionais ao servidor, esse tipo de menu é extremamente leve (pesa menos de 5 KB) e não prejudica o tempo de carregamento ou as notas de velocidade no Google PageSpeed Insights.

É possível colocar ícones ao lado dos textos do menu suspenso?

Sim. Você pode adicionar ícones utilizando caracteres e símbolos Unicode diretamente no código HTML (como &#127968; para uma casa de início) ou integrando fontes de ícones leves como FontAwesome ou SVG inline dentro das tags de link <a>.

Conclusão

A criação de um menu suspenso responsivo utilizando HTML e CSS é uma das melhorias técnicas mais impactantes que você pode implementar no seu blog no Blogger. Além de modernizar o visual do site, essa solução garante navegação fluida em celulares, melhora o tempo de permanência dos usuários e constrói uma arquitetura de links clara para os motores de busca.

Ao dispensar o uso de scripts pesados e optar por uma estrutura limpa e semântica, seu projeto ganha em velocidade e estabilidade técnica. Siga as etapas de personalização apresentadas neste artigo, teste o comportamento em diferentes resoluções de tela e estruture suas categorias de forma estratégica para oferecer a melhor experiência de leitura possível ao seu público.

Para continuar aprimorando a estrutura completa do seu projeto, confira os demais artigos detalhados no nosso guia completo de tutoriais do Blogger.

Próximo artigo Artigo anterior