Componente RSO

AVISO:

Esta é uma página component usada internamente pela Wiki Lusófona. Ela foi feita para ser usada e incluída em outras páginas.

O que é isso?

Um componente que faz com que tudo da página apareça suavemente, em vez de aparecer instantaneamente depois da página carregar.

O fade pode também ser cambaleado, com cada coisa aparecendo por vez em vez de aparecer tudo depois do efeito.

Uso

Em qualquer wiki:

[[include :scp-pt-br:component:fade-in speed=1]]

speed=1: Tudo aparece ao mesmo tempo
speed=2: Tudo aparece 0.5 segundos depois da coisa anterior
speed=3: Tudo aparece 0.25 segundos depois da coisa anterior

Ressalvas

O efeito de fade-in só se aplica a elementos que são filhos diretos de #page-content. Não se aplica a elementos aninhados (por exemplo, coisas dentro de um blockquote ou div) ou outras partes da página (por exemplo, a barra lateral).

(Você pode usar isso a seu favor se houver outras animações em sua página que entrem em conflito (por exemplo, Animação ACS) simplesmente envolvendo o elemento animado problemático em um div.)

Também se aplica apenas aos primeiros 15 elementos da página, e tudo o mais depois disso aparecerá ao mesmo tempo. Isso é o suficiente para uma experiência de carregamento suave quando um leitor abre a página, mas se ele quiser rolar até o final, pode fazer isso sem ter que esperar muito.


Código Fonte

@media screen and (prefers-reduced-motion: no-preference) {
  #page-title, #breadcrumbs, #page-content > * {
    animation-name: fadeIn;
    animation-duration: 1s;
    animation-iteration-count: 1;
    animation-timing-function: ease-out;
    animation-fill-mode: backwards;
  }
}
 
#page-title { animation-delay: 0s; }
 
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translate(0,30px);
  }
  to {
    opacity: 1;
    transform: translate(0,0);
  }
}
 
:root {
  --fade-in-delay: 0s;
}
 
#page-content > :nth-child(1) { animation-delay: calc(1 * var(--fade-in-delay)); }
#page-content > :nth-child(2) { animation-delay: calc(2 * var(--fade-in-delay)); }
#page-content > :nth-child(3) { animation-delay: calc(3 * var(--fade-in-delay)); }
#page-content > :nth-child(4) { animation-delay: calc(4 * var(--fade-in-delay)); }
#page-content > :nth-child(5) { animation-delay: calc(5 * var(--fade-in-delay)); }
#page-content > :nth-child(6) { animation-delay: calc(6 * var(--fade-in-delay)); }
#page-content > :nth-child(7) { animation-delay: calc(7 * var(--fade-in-delay)); }
#page-content > :nth-child(8) { animation-delay: calc(8 * var(--fade-in-delay)); }
#page-content > :nth-child(9) { animation-delay: calc(9 * var(--fade-in-delay)); }
#page-content > :nth-child(10) { animation-delay: calc(10 * var(--fade-in-delay)); }
#page-content > :nth-child(11) { animation-delay: calc(11 * var(--fade-in-delay)); }
#page-content > :nth-child(12) { animation-delay: calc(12 * var(--fade-in-delay)); }
#page-content > :nth-child(13) { animation-delay: calc(13 * var(--fade-in-delay)); }
#page-content > :nth-child(14) { animation-delay: calc(14 * var(--fade-in-delay)); }
#page-content > :nth-child(15) { animation-delay: calc(15 * var(--fade-in-delay)); }
#page-content > :nth-child(n+15) { animation-delay: calc(16 * var(--fade-in-delay)); }
:root {
   --fade-in-delay: 0.5s;
}
:root {
  --fade-in-delay: 0.25s;
}
avaliação: +1+x

Em qualquer wiki:

[[include :scp-pt-br:component:rso]]

Esse é um componente que eu uso para facilmente mudar a formatação em todos os meus artigos. Eu o atualizo o tempo todo de acordo com meus gostos e como eu quero que seja a aparência dos meus artigos. Se você usá-lo e ele quebrar sua página, eu não sou responsável.

Salvo indicação em contrário, o conteúdo desta página é licenciado sob Creative Commons Attribution-ShareAlike 3.0 License