Este tutorial mostra como desenvolver uma página de erro 404 animada. Para tal efeito usamos algumas imagens e pequenas regras de CSS para animação. O código é simples e quem já possui um conhecimento em CSS entenderá rapidamente o significado das regras para esse efeito. Veja o resultado final da página de erro 404 animada.
<div class="container"> <div class="box"><div class="cover_pan"></div> </div>
Aplicamos no elemento marcado com a class box uma imagem de fundo (404.png). Ela funcionará como uma máscara.
body {color: #fff; margin: 0;background: url(img/texture.png) repeat;} .container {width: 960px;margin:50px auto; text-align: center; font: 13px/22px "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;color: #000;} .box { background: url(img/404.png) no-repeat 0 0; border-bottom: 5px solid #000; height: 343px; margin-bottom: 25px; padding-bottom: 50px; }
O código CSS abaixo é responsável por fazer grande parte da animação. Definimos a imagem que será rolada no fundo, nesse caso a imagem covers.jpg, definimos o tempo da animação e que a mesma será de forma contínua, ficará em um loop infinito.
.cover_pan{ background: #fff url(img/covers.jpg) repeat 1055px bottom; height: 343px; margin-left:1px; overflow: hidden; position: relative; width:99.5%; z-index: -1; -moz-animation-name: pan; -moz-animation-duration:40s; -moz-animation-iteration-count: infinite; -moz-animation-timing-function: linear; -webkit-animation-name: pan; -webkit-animation-duration:40s; -webkit-animation-iteration-count: infinite; -webkit-animation-timing-function: linear; }
Esta é uma das implementações mais simples do código que você terá que aplicar. Estamos deslizando a posição de fundo. Cover_pan da direita para a esquerda.
@-moz-keyframes pan { 0% { background-position: 1338px bottom; } 100% { background-position: left bottom; } } @-webkit-keyframes pan { 0% { background-position: 1338px bottom; } 100% { background-position: left bottom; } }
Você pode baixar arquivos usados neste tutorial para estudar.
Artigo Original.
Me siga no Twitter: @kadunew
Forte abraço!