Pagina inicial » Codificação » Como criar um rodapé fixo somente para CSS

    Como criar um rodapé fixo somente para CSS

    Normalmente, precisamos de JavaScript para executar efeitos de rolagem relacionados a diferentes ações do usuário em páginas da web. O roteiro faz o trabalho de rastreamento de quanto a rolagem para cima ou para baixo leva uma página, e desencadeia uma ação quando uma altura limite é atingida.

    Não é particularmente ruim usar JavaScript para efeitos de rolagem. Na verdade, há casos mais complicados que são impossível resolver sem JavaScript. No entanto, existem Hacks de CSS que pode substituir esses scripts às vezes.

    Esse post vai mostrar pra vocêsw para criar efeitos de revelação de rodapé na rolagem de página usando CSS. Usaremos dois casos de uso para demonstrar isso: um para a página inteira (veja a demonstração) e um para elementos de página individuais, como artigos.

    Página inteira

    Precisamos criar um rodapé aparece abaixo da página enquanto o usuário está rolando para baixo. Além disso, quando eles estão rolando a página de volta para cima o rodapé precisa estar escondido abaixo da página novamente.

    Para alcançar este objetivo, primeiro temos que criar um rodapé com posição fixa na parte inferior da tela.

    1. Criar um rodapé fixo

    Vamos adicionar algum conteúdo e um rodapé para a primeira página. Estou usando as tags HTML

    e
    para semântica. Contudo,
    funciona bem.

    Na minha demonstração, há uma imagem de morcego mostrada dentro do rodapé para um efeito não tão assustador, mas você pode escolher qualquer outra imagem que desejar.

     

    Continue rolando até ver o rodapé

    Lorem ipsum dolor sente-se amet…

    Mover para CSS, remova qualquer espaço em volta do tag por definindo margens para 0, e fazer isso por tempo suficiente adicionando uma altura personalizada para induzir a rolagem (se o conteúdo do corpo em sua página for longo o suficiente para causar rolagem, você não precisará dar uma altura).

    Dê algumas dimensões (largura e altura) para o rodapé e consertar sua posição para a parte inferior da tela com o posição: fixa; e fundo: 0; propriedades.

     corpo font-family: Texto carmesim; tamanho da fonte: 13pt; margem: 0;  rodapé largura: 100%; altura: 200 px; posição: fixa; fundo: 0; background-color: # DD5632;  
    2. Esconda o rodapé

    Aplicar o z-index: -1 regra para o rodapé, a fim de coloque-o atrás de todos os outros elementos na página.

    Colora os dois e tags branco, a fim de cobrir o rodapé.

     corpo, html background-color: #fff;  rodapé largura: 100%; altura: 200 px; posição: fixa; fundo: 0; background-color: # DD5632; z-index: -1;  
    3. Ajuste a margem inferior

    Colocou o margem de fundo do tag igual à altura do rodapé (no meu exemplo 200px).

    Desta forma, haverá espaço suficiente na parte inferior para o rodapé para Seja visível quando o usuário rola a página.

     corpo altura: 1000 px; margem: 0; margem inferior: 200px; 

    É isso aí. O rodapé revela efeito para uma página web completa é feita. Confira a demonstração Codepen abaixo.

    Elementos individuais da página

    Essa técnica pode ser usada para um elemento HTML individual (com um rodapé) longo O suficiente para um efeito de rolagem de página apropriado. O método é um pouco hacky, já que atualmente não funciona no Chrome e no IE, mas tem um retorno decente.

    1. Crie um artigo longo

    Primeiro, vamos criar um artigo longo com um rodapé. Para promover o código semântico, eu escolhi

    e
    .

     

    Artigo 1

    Lorem ipsum dolor sente-se amet…

    Abaixo você pode ver o estilo básico do artigo e do rodapé.

     artigo width: 500px; cor de fundo: # FEF9F3; preenchimento: 20 px 40 px;  artigo> footer height: 100px; cor de fundo: # FE0178; corpo font-family: cormorant garamond;  

    Meu artigo atualmente parece com isso. Claro que você também pode usar outras regras básicas de estilo.

    Artigo com rodapé - estilo básico
    2. Faça o rodapé pegajoso

    O rodapé anterior foi corrigido, este vai ser pegajoso. Aplicar o posição: pegajosa regra para o rodapé, por isso vai passar dentro dos limites do artigo, mas ainda mantenha sua posição na tela enquanto o usuário está rolando para cima e para baixo.

     artigo> footer height: 100px; cor de fundo: # FE0178; posição: -webkit-sticky; posição: pegajosa; fundo: 80px;  

    o inferior: 80px regra fixa a posição do rodapé 80px acima da parte inferior do artigo.

    Você pode ajustar seu valor ao seu gosto, pois determina o ponto em que o rodapé começa a aparecer ou desaparecer enquanto o usuário está rolando para baixo ou para cima..

    Dê o mesmo valor para a margem inferior do artigo, de modo que haja espaço suficiente na parte inferior para revelar o rodapé completo.

     artigo width: 500px; cor de fundo: # FEF9F3; preenchimento: 20 px 40 px; margem inferior: 80px; 
    3. Adicione um fundo parcialmente transparente

    Agora precisamos uma abertura ao lado da parte inferior do artigo através do qual podemos ver o rodapé pegajoso rolando para baixo e para cima.

    Para conseguir isso, substitua o cor de fundo do artigo com um Gradiente linear imagem de fundo, que do topo do artigo até o topo do rodapé é colorido com a cor de fundo do artigo, e a parte restante para o fundo é feito transparente.

     artigo width: 500px; preenchimento: 20 px 40 px; imagem de fundo: gradiente linear (para baixo, # FEF9F3 calc (100% - 120px), transparente 0); margem inferior: 80px;  

    ocalc (100% -120px) Função CSS calcula o altura total do artigo menos o rodapé. No meu exemplo, é 120px (100px para altura + 20px para preenchimento).

    Artigo com imagem de fundo linear-gradiente e rodapé pegajoso
    4. Coloque o rodapé de volta

    Finalmente, vamos coloque o rodapé atrás do artigo usando o z-index: -1 Regra de CSS.

     artigo> footer height: 100px; cor de fundo: # FE0178; posição: -webkit-sticky; posição: pegajosa; fundo: 80px; z-index: -1; 

    E é isso, o elemento de página individual com o efeito de revelação na rolagem está pronto. Confira a caneta Codepen abaixo. Você também pode encontrar os dois casos de uso em nossa página do Github.