criando menu responsivo

Criando menu responsivo css simples com hover e click no mobile

A área de desenvolvimento Front-end vem evoluindo muito nos últimos tempos.

No inicio a maioria dos efeitos de hover e click só era possível com o uso de Javascript, porém as coisas evoluíram e hoje é possível adicionar evento click usando apenas CSS e HTML.

Hoje usando apenas o CSS você consegue resolver muitos problemas que a algum tempo atrás não era possível, efeitos, animações são criadas sem muita dificuldade e sem uso de JavaScript

Adicionei apenas um estilo básico de demonstração, você pode copiar e refazer o estilo da maneira que preferir e que se encaixar no projeto que esteja realizando no momento.

Para criar o menu, primeiro criei uma arquitetura básica de HTML, para criar o evento click na versão mobile usei um label e um input checkbox.

O checkbox ficará oculto na versão desktop, pois ele que fará o evento de click, quando o checkbox estiver marcado(checked) o menu abrirá como se fosse um dropdown.

Em seguida criei a folha de estilo do meu menu, ela foi feita em SASS, você pode converter para CSS se preferir. Quando a classe input-menu-all que é a classe da label do checkbox estiver como checked ela dará um display: block na classe .list-menu e fará o menu abrir como se fosse um dropdown

Abaixo você pode ver o resultado da configuração do menu usando apenas CSS.

Também temo sum artigo com 7 Bibliotecas CSS para desenvolvedores ideal para otimizar tempo em seus projetos de desenvolvimento.

Espero ter ajudado 🙂

Isto foi útil?

Obrigado pelo seu feedback!

4 comentários em “Criando menu responsivo css simples com hover e click no mobile”

  1. Leonardo Florêncio

    Não reparei o código ainda. O que necessito é que o menu na versão mobile fique em linha, sem dropdown. É possível apenas apontando inline ao invés de in block? Não sei se fui claro.
    Obrigado.
    Leonardo

    1. Esse menu está feito com flex, acredito que o modo que você quer em linha não seria muito viável para um menu mobile, pois não caberia os itens.
      Para deixar somente em linha basta criar uma

      e dar um display flex nela. e um flex-direction row ou column.

      1. Leonardo Florêncio

        Oi Gustavo valeu pela resposta. na verdade são apenas 3 itens. utilizei o elementor para isso, mas penso que o CSS ajudaria um tanto. Mas, vou testar da forma que apontou com os display flex e o flex-direction. Obrigadu

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima