- Página Inicial
- Códigos CSS Prontos
- Menu full screen css animado
- Voltar
Menu full screen css animado
Neste tutorial você vai aprender como criar um Menu full screen somente com Css e Html Responsivo.
Nesta seção, projetaremos uma estrutura das seguintes tags abaixo.
Tags: <nav>, <label>, <input>, <div>, <ul>, <li>, <span> e a tag <a> para inserirmos o link de destino.
Essas tags usaremos para criar o Menu full screen com html e css.
Vamos Adicionar o HTML
<input type="checkbox" id="burger-toggle"> <label for="burger-toggle" class="burger-menu"> <div class="line"></div> <div class="line"></div> <div class="line"></div> </label> <nav class="menu"> <div class="menu-inner"> <ul class="menu-nav"> <li class="menu-nav-item"><a class="menu-nav-link" href="#"><span> <div>Home</div> </span></a> </li> <li class="menu-nav-item"><a class="menu-nav-link" href="#"><span> <div>Html</div> </span></a> </li> <li class="menu-nav-item"><a class="menu-nav-link" href="#"><span> <div>Css</div> </span></a> </li> <li class="menu-nav-item"><a class="menu-nav-link" href="#"><span> <div>jQuery</div> </span></a> </li> </ul> </div> </nav>
Vamos Adicionar o CSS
Nesta seção, usaremos algumas propriedades CSS para estilizar o Menu full screen com css
#burger-toggle { position: relative; appearance: none; opacity: 0; display:none; } #burger-toggle:checked ~ .menu { opacity: 1; visibility: visible; } #burger-toggle:checked ~ .menu .menu-nav-link span div, #burger-toggle:checked ~ .menu img, #burger-toggle:checked ~ .menu .title p { transform: translateY(0); transition: 1.2s 0.1s cubic-bezier(0.35, 0, 0.07, 1); } #burger-toggle:checked ~ .menu .image-link:nth-child(1) img { transition-delay: 0.18s; } #burger-toggle:checked ~ .menu .image-link:nth-child(2) img { transition-delay: 0.26s; } #burger-toggle:checked ~ .menu .image-link:nth-child(3) img { transition-delay: 0.34s; } #burger-toggle:checked ~ .menu .image-link:nth-child(4) img { transition-delay: 0.42s; } #burger-toggle:checked ~ .burger-menu .line::after { transform: translateX(0); } #burger-toggle:checked ~ .burger-menu .line:nth-child(1) { transform: translateY(calc(var(--burger-menu-radius) / 30)) rotate(45deg); background-color: #ffffff; } #burger-toggle:checked ~ .burger-menu .line:nth-child(2) { transform: scaleX(0); background-color: #ffffff; } #burger-toggle:checked ~ .burger-menu .line:nth-child(3) { transform: translateY(calc(var(--burger-menu-radius) / -5)) rotate(-45deg); background-color: #ffffff; } .burger-menu { --burger-menu-radius: 4em; position: absolute; top: 10px; right: 9%; z-index: 100; display: block; width: var(--burger-menu-radius); height: var(--burger-menu-radius); outline: none; cursor: pointer; } .burger-menu .line { position: absolute; left: 25%; width: 50%; height: 3px; background: rgb(76, 76, 76); border-radius: 10px; overflow: hidden; transition: 0.5s; } .burger-menu .line:nth-child(1) { top: 32%; } .burger-menu .line:nth-child(2) { top: 42%; } .burger-menu .line:nth-child(3) { top: 53%; } .burger-menu .line::after { position: absolute; content: ""; top: 0; left: 0; width: 100%; height: 100%; background: var(--primary-color-darker); transform: translateX(-100%); transition: 0.25s; } .burger-menu .line:nth-child(2)::after { transition-delay: 0.1s; } .burger-menu .line:nth-child(3)::after { transition-delay: 0.2s; } .burger-menu:hover .line::after { transform: translateX(0); transition-delay: 0.3s; } .menu { position: fixed; top: 0; left: 0; z-index: 99; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; background: #1a1e23; opacity: 0; overflow-x: hidden; visibility: hidden; transition: 0.3s; } @media screen and (max-width: 750px) { .menu { display: block; } } .menu-nav { display: flex; flex-wrap: wrap; margin: 0; padding: 0; text-align: center; list-style-type: none; margin-top: 10%; } @media screen and (max-width: 750px) { .menu-nav { flex-direction: column; } } .menu-nav-item { flex: 1; display: block; padding: 0em 1em; margin-right: 10px; } .menu-nav-link { position: relative; display: inline-flex; font-size: 2rem; color: white; text-decoration: none; } .menu-nav-link span { overflow: hidden; } .menu-nav-link span div { transform: translateY(102%); } .menu-nav-link::after { position: absolute; content: ""; top: 100%; left: 0; width: 100%; height: 3px; background: #00e0e9; transform: scaleX(0); transform-origin: right; transition: transform 0.5s; } .menu-nav-link:hover::after { transform: scaleX(1); transform-origin: left; }
Combinando as Duas seções acima Html e Css temos o seguinte Resultado!
Veja o Resultado baixo!
Baixar Código Veja Funcionando
Publicado por: Loop Nerd
1.169 Visualizações
Deixe um comentário