Small pieces, composed.Peças pequenas, compostas.
A primitive is one idea about motion, written as an HTML attribute and tuned with CSS custom properties. Every tile below renders live, shows the exact markup beside it and takes its status from the generated catalog: 144 presets, 11 Experimental.Uma primitiva é uma ideia sobre movimento, escrita como atributo HTML e ajustada com propriedades personalizadas do CSS. Cada bloco abaixo renderiza ao vivo, mostra a marcação exata ao lado e traz seu status do catálogo gerado: 144 presets, 11 Experimentais.
One primitive, tuned by variables.Uma primitiva, ajustada por variáveis.
Presets only set defaults. Every tile below is the same fade-up, changed by one custom property on the element. No new name, no new class.Presets só definem valores padrão. Cada bloco abaixo é o mesmo fade-up, alterado por uma propriedade personalizada no elemento. Nenhum nome novo, nenhuma classe nova.
Delay is the choreography.O atraso é a coreografia.
A sequence is the same primitive with a growing --vl-enter-delay. For lists that should run when the parent mounts, vl-children="stagger" sets the delays from one attribute and --vl-stagger-step.Uma sequência é a mesma primitiva com um --vl-enter-delay crescente. Para listas que devem rodar quando o pai monta, vl-children="stagger" define os atrasos a partir de um atributo e de --vl-stagger-step.
Read at the speed of the scroll.Leia na velocidade da rolagem.
Words fill with ink in order as the paragraph crosses the viewport. Each word is a direct child <span>. Without scroll timelines or with reduced motion, the text is simply fully inked.As palavras se preenchem de tinta em ordem conforme o parágrafo cruza a viewport. Cada palavra é um <span> filho direto. Sem timelines de rolagem ou com movimento reduzido, o texto simplesmente aparece todo preenchido.
Motion is not a layer added after the design. It is part of the structure. You describe the intent in the markup, you tune it with a few custom properties, and the browser does the work it already knows how to do. Nothing here waits for a script to start.
Movimento não é uma camada adicionada depois do design. Ele faz parte da estrutura. Você descreve a intenção na marcação, ajusta com poucas propriedades personalizadas, e o navegador faz o trabalho que já sabe fazer. Nada aqui espera um script para começar.
CodeCódigo
<p vl-scroll="ink-scrub"><span>Motion</span> <span>is</span> …</p>Mark the phrase that matters.Marque a frase que importa.
A marker sweeps behind a phrase as it crosses the viewport. Use <mark> so the emphasis is also semantic. --vl-highlight-height turns the fill into an underline.Um marcador varre atrás de uma frase conforme ela cruza a viewport. Use <mark> para que a ênfase também seja semântica. --vl-highlight-height transforma o preenchimento em sublinhado.
Velora is declarative, composable and native to the browser.O Velora é declarativo, composável e nativo do navegador.
CodeCódigo
<mark vl-scroll="text-highlight" style="--vl-highlight-height:.14em">composable</mark>One variable font, one axis, one scroll.Uma fonte variável, um eixo, uma rolagem.
Outfit is a variable font, so weight moves from light to black while you scroll. Changing weight reflows text, so use it on one display line, never on body copy.Outfit é uma fonte variável, então o peso vai de light a black enquanto você rola. Mudar o peso reflui o texto; use em uma única linha de destaque, nunca em texto corrido.
↓ Scroll through the word↓ Role pela palavraWeightPeso
CodeCódigo
<p vl-scroll="text-scrub">Weight</p> /* --vl-scrub-from: 200 → --vl-scrub-to: 800 */Two rows, opposite directions, no timer.Duas linhas, direções opostas, sem timer.
The rows travel with the scroll, so there is no continuous animation to pay for. One custom property, --vl-marquee-distance, sets how far and which way each row goes.As linhas viajam com a rolagem, então não há animação contínua para pagar. Uma propriedade personalizada, --vl-marquee-distance, define até onde e em que direção cada linha vai.
Attributes describe intent ✦ Channels enable composition ✦ Attributes describe intent ✦ Channels enable composition ✦Atributos descrevem a intenção ✦ Canais permitem a composição ✦ Atributos descrevem a intenção ✦ Canais permitem a composição ✦
Parameters tune it ✦ Scenes organize time ✦ Parameters tune it ✦ Scenes organize time ✦Parâmetros ajustam ✦ Cenas organizam o tempo ✦ Parâmetros ajustam ✦ Cenas organizam o tempo ✦
The full catalog.O catálogo completo.
The acts above teach the ideas. Below, every value of every channel is one tile with its exact markup, parameters and status from the generated catalog.Os atos acima ensinam as ideias. Abaixo, cada valor de cada canal é um bloco com a marcação exata, os parâmetros e o status do catálogo gerado.
Arrive as soon as it is in view.Chegue assim que estiver em vista.
Each tile is one value of vl-enter inside a vl-in-view gate. The gate plays the entrance when the tile reaches the viewport and resets it when the tile leaves.Cada bloco é um valor de vl-enter dentro de um portão vl-in-view. O portão toca a entrada quando o bloco chega à viewport e a reinicia quando ele sai.
Scroll past a row and back to replay itRole além de uma linha e volte para repeti-la
Action. Every value takes its mark.Ação. Cada valor ocupa sua marca.
CodeCódigo
<div vl-enter="fade-up">fade-up</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="slide-left">slide-left</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="scale-in">scale-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="pop-in">pop-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="blur-in">blur-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="clip-rise">clip-rise</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="mask-sweep">mask-sweep</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="flow-in">flow-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="cut-reveal">cut-reveal</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="fade-up"
style="--vl-distance-y: 3.5rem;
--vl-enter-duration: 1.6s;
--vl-enter-delay: 400ms;
--vl-enter-ease: var(--vl-ease-spring)">
fade-up
</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="blur-lift">blur-lift</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="depth-enter">depth-enter</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="fade-down">fade-down</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="fade-in">fade-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="glide-in">glide-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="reveal-3d">reveal-3d</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="reveal-cinematic">reveal-cinematic</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="rise-3d">rise-3d</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="slide-right">slide-right</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="spring-3d">spring-3d</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="text-reveal">text-reveal</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="text-reveal-down">text-reveal-down</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="text-reveal-up">text-reveal-up</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="tilt-in">tilt-in</div>
DetailsDetalhes
CodeCódigo
<div vl-enter="unfold">unfold</div>
DetailsDetalhes
All 26 vl-enter values, 1 ExperimentalTodos os 26 valores de vl-enter, 1 Experimental
3d-entry blur-in blur-lift clip-rise cut-reveal (Experimental) depth-enter fade-down fade-in fade-up flow-in focus glide-in mask-sweep pop-in reveal-3d reveal-cinematic rise-3d scale-in slide-left slide-right spring-3d text-reveal text-reveal-down text-reveal-up tilt-in unfold
One parent sets the rhythm.Um pai define o ritmo.
vl-children puts the timing on the parent: each child gets its own delay without a custom property of its own. Every tile is one value on a parent with four children.vl-children coloca o tempo no pai: cada filho recebe seu próprio atraso sem uma propriedade personalizada própria. Cada bloco é um valor em um pai com quatro filhos.
Scroll past a row and back to replay itRole além de uma linha e volte para repeti-la
One call sheet, many entrances.Uma folha de chamada, várias entradas.
CodeCódigo
<div vl-children="stagger" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="cascade" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="sequence" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="orchestrate" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="wave" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="blur-cascade" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="zoom-stagger" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="cinema-stagger" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="grid-wave" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="spiral-stagger" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="list-enter" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
CodeCódigo
<div vl-children="list-enter-right" vl-stagger="140ms">
<span vl-enter="fade-up">One</span>
<span vl-enter="fade-up">Two</span>
<span vl-enter="fade-up">Three</span>
<span vl-enter="fade-up">Four</span>
</div>
DetailsDetalhes
Pick a temperament once.Escolha um temperamento uma vez.
vl-base sets duration, distance and easing for everything below it. The three tiles run the same vl-enter; only the base changes.vl-base define duração, distância e easing para tudo abaixo dele. Os três blocos rodam o mesmo vl-enter; só a base muda.
Scroll past a row and back to replay itRole além de uma linha e volte para repeti-la
Same shot, three temperaments.Mesma cena, três temperamentos.
CodeCódigo
<div vl-base="subtle" vl-enter="fade-up">subtle</div>
DetailsDetalhes
CodeCódigo
<div vl-base="balanced" vl-enter="fade-up">balanced</div>
DetailsDetalhes
CodeCódigo
<div vl-base="dramatic" vl-enter="fade-up">dramatic</div>
DetailsDetalhes
All 3 vl-base valuesTodos os 3 valores de vl-base
balanced dramatic subtle
Leave as deliberately as you arrive.Saia com a mesma intenção com que chegou.
vl-exit mirrors vl-enter and takes the same three knobs. Each block waits 1.3 s inside the gate, then leaves, so the stage is empty afterwards.vl-exit espelha vl-enter e usa os mesmos três ajustes. Cada bloco espera 1,3 s dentro do portão e então sai, então o palco fica vazio depois.
Scroll away and back to replayRole para longe e volte para repetir
Cut. Leave the frame on purpose.Corta. Saia do quadro de propósito.
CodeCódigo
<div vl-exit="fade-out" style="--vl-exit-delay: 1.3s">fade-out</div>
DetailsDetalhes
CodeCódigo
<div vl-exit="fade-out-up" style="--vl-exit-delay: 1.3s">fade-out-up</div>
DetailsDetalhes
CodeCódigo
<div vl-exit="fade-out-down" style="--vl-exit-delay: 1.3s">fade-out-down</div>
DetailsDetalhes
CodeCódigo
<div vl-exit="shrink-out" style="--vl-exit-delay: 1.3s">shrink-out</div>
DetailsDetalhes
All 4 vl-exit valuesTodos os 4 valores de vl-exit
fade-out fade-out-down fade-out-up shrink-out
Let the scrollbar drive it.Deixe a barra de rolagem conduzir.
vl-scroll links an animation to scroll position through a native view or scroll timeline. Nothing runs on a timer, and nothing runs without scroll-driven animation support.vl-scroll liga uma animação à posição de rolagem por meio de uma view ou scroll timeline nativa. Nada roda em timer, e nada roda sem suporte a animações guiadas por rolagem.
Scroll slowly and watch each stage moveRole devagar e veja cada palco se mover
The scrollbar is the dolly.A barra de rolagem é o dolly.
CodeCódigo
<div vl-scroll="parallax">parallax</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="media-zoom">media-zoom</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="rotate-scroll">rotate-scroll</div>
DetailsDetalhes
Attributes describe intent ✦ Channels enable composition ✦ Attributes describe intentAtributos descrevem a intenção ✦ Canais permitem a composição ✦ Atributos descrevem a intenção
CodeCódigo
<p vl-scroll="scroll-marquee">Attributes describe intent ✦ Channels enable composition ✦ Attributes describe intent</p>
DetailsDetalhes
Mark the phrase that matters as it crosses the viewport.Marque a frase que importa enquanto ela cruza a viewport.
CodeCódigo
<p>Mark the <mark vl-scroll="text-highlight">phrase that matters</mark> as it crosses the viewport.</p>
DetailsDetalhes
Weight moves word by word
O peso se move palavra por palavra
CodeCódigo
<p vl-scroll="text-scrub">
<span>Weight</span> <span>moves</span> <span>word</span>
<span>by</span> <span>word</span>
</p>
DetailsDetalhes
Colour fills word by word
A cor preenche palavra por palavra
CodeCódigo
<p vl-scroll="ink-scrub"
style="--vl-ink-from: var(--vl-text-muted);
--vl-ink-to: var(--vl-color-accent)">
<span>Colour</span> <span>fills</span> <span>word</span>
<span>by</span> <span>word</span>
</p>
DetailsDetalhes
CodeCódigo
<div style="--vl-ring-count: 6" vl-scroll="ring-scroll">
<div>1</div><div>2</div><div>3</div>
<div>4</div><div>5</div><div>6</div>
</div>
DetailsDetalhes
CodeCódigo
<div style="--vl-letterbox-from: 14%" vl-scroll="letterbox">
<img src="img/set-lights.jpg" alt="">
</div>
DetailsDetalhes
In focusEm foco
CodeCódigo
<h2 vl-scroll="defocus" style="--vl-blur-from: 10px">In focus</h2>
DetailsDetalhes
CodeCódigo
<img vl-scroll="refocus" src="img/set-lights.jpg" alt=""
style="--vl-blur-from: 10px">
DetailsDetalhes
CodeCódigo
<div vl-scroll-markers="buttons" tabindex="0"
aria-label="Three cards">
<section>Card 1 of 3</section>
<section>Card 2 of 3</section>
<section>Card 3 of 3</section>
</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="cinema-zoom">cinema-zoom</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="crossfade">crossfade</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="depth-drift">depth-drift</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="depth-push">depth-push</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="path">path</div>
DetailsDetalhes
CodeCódigo
<div vl-scroll="reveal">reveal</div>
DetailsDetalhes
All 19 vl-scroll values, 6 ExperimentalTodos os 19 valores de vl-scroll, 6 Experimentais
cinema-zoom crossfade defocus (Experimental) depth-drift depth-push ink-scrub (Experimental) letterbox (Experimental) media-zoom parallax path refocus (Experimental) reveal ring-scroll (Experimental) rotate-scroll scroll-horizontal scroll-marquee scroll-scale text-highlight text-scrub (Experimental)
Ambient motion, on a leash.Movimento ambiente, na coleira.
vl-loop-effect repeats until it leaves the screen: the in-view gate pauses it outside the viewport, and reduced motion or vl-motion="still" stops it everywhere. Use one accent, not a wall of them.vl-loop-effect se repete até sair da tela: o portão in-view o pausa fora da viewport, e movimento reduzido ou vl-motion="still" o interrompe em todo lugar. Use um destaque, não uma parede deles.
Each tile loops while it is on screenCada bloco repete enquanto está na tela
The projector never stops.O projetor nunca para.
CodeCódigo
<div vl-loop-effect="float">float</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="glow-breathe">glow-breathe</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="wobble">wobble</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="rock">rock</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="morph">morph</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="spin">spin</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="shimmer">shimmer</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="aurora-drift">aurora-drift</div>
DetailsDetalhes
shimmer-text
CodeCódigo
<h3 vl-loop-effect="shimmer-text">shimmer-text</h3>
DetailsDetalhes
typewriter-loop
CodeCódigo
<p vl-loop-effect="typewriter-loop" style="--vl-type-steps: 15">typewriter-loop</p>
DetailsDetalhes
CodeCódigo
<i vl-loop-effect="orbit" style="--vl-orbit-radius: 2.2rem"></i>
DetailsDetalhes
CodeCódigo
<div style="perspective: 600px">
<div vl-loop-effect="sway" style="--vl-sway-angle: 28deg">sway</div>
</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="aurora">aurora</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="bounce">bounce</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="breathe">breathe</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="drift">drift</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="halo-breathe">halo-breathe</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="levitate-x">levitate-x</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="mesh-pan">mesh-pan</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="pendulum">pendulum</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="pulse-ring">pulse-ring</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="ripple">ripple</div>
DetailsDetalhes
CodeCódigo
<div vl-loop-effect="spin-slow">spin-slow</div>
DetailsDetalhes
All 24 vl-loop-effect values, 1 ExperimentalTodos os 24 valores de vl-loop-effect, 1 Experimental
aurora aurora-drift bounce breathe drift float glow-breathe halo-breathe levitate-x mesh-pan morph orbit orbit-spin pendulum pulse-ring ripple rock shimmer shimmer-text spin spin-slow sway (Experimental) typewriter-loop wobble
Answer the pointer, then the keyboard.Responda ao ponteiro, depois ao teclado.
vl-hover reacts to the pointer. Give each control a visible :focus-visible state: the catalog lists which values also answer keyboard focus through their own rules, and the rest need yours.vl-hover reage ao ponteiro. Dê a cada controle um estado :focus-visible visível: o catálogo lista quais valores também respondem ao foco do teclado por regras próprias, e os demais precisam das suas.
Move the pointer over each control, or press Tab to reach itPasse o ponteiro sobre cada controle, ou use Tab para chegar a ele
The audience reaches in. The set answers.A plateia chega perto. O set responde.
CodeCódigo
<button type="button" vl-hover="hover-lift">hover-lift</button>
DetailsDetalhes
CodeCódigo
<button type="button" vl-hover="hover-glow"
style="--vl-shadow-glow: 0 0 0 1px rgb(237 237 220 / .45),
0 0 28px rgb(237 237 220 / .3)">
hover-glow
</button>
DetailsDetalhes
CodeCódigo
<button type="button" vl-hover="border-trace">border-trace</button>
DetailsDetalhes
CodeCódigo
<button type="button" vl-hover="gradient-sweep">gradient-sweep</button>
DetailsDetalhes
CodeCódigo
<a href="#hover" vl-hover="icon-shift"><span>icon-shift</span><span aria-hidden="true">→</span></a>
DetailsDetalhes
CodeCódigo
<a href="#hover" vl-hover="underline-expand">underline-expand</a>
DetailsDetalhes
CodeCódigo
<button type="button" vl-hover="hover-slice">hover-slice</button>
DetailsDetalhes
All 7 vl-hover values, 1 ExperimentalTodos os 7 valores de vl-hover, 1 Experimental
border-trace gradient-sweep hover-glow hover-lift hover-slice (Experimental) icon-shift underline-expand
Native state changes, animated.Mudanças de estado nativas, animadas.
vl-state animates state the browser already owns: an open <details>, an open popover, a checked checkbox. The state lives in HTML, so keyboard and assistive technology keep working.vl-state anima um estado que o navegador já controla: um <details> aberto, um popover aberto, um checkbox marcado. O estado vive no HTML, então teclado e tecnologias assistivas continuam funcionando.
Press Enter or Space on each controlPressione Enter ou Espaço em cada controle
The set remembers where it was.O set lembra onde estava.
CodeCódigo
<input type="checkbox" id="vls-ee">
<label for="vls-ee">Toggle the panel</label>
<div vl-state="enter-exit on-checked">
Fades and rises in, then leaves.
</div>
DetailsDetalhes
CodeCódigo
<div vl-state="smooth" class="swatch" tabindex="0">Hover or focus me</div>
<style>
.swatch { padding: 1.2rem 1.6rem; background: #EDEDDC; color: #0A0A09; }
.swatch:is(:hover, :focus-visible) { background: #C8FF3D; scale: 1.12; rotate: -3deg; }
</style>
DetailsDetalhes
Open the panelAbra o painel
The panel height animates from zero to its content size.A altura do painel anima de zero até o tamanho do conteúdo.
CodeCódigo
<details vl-state="expand">
<summary>Open the panel</summary>
<p>The panel height animates from zero to its content size.</p>
</details>
DetailsDetalhes
Entry and exit run in the top layer.Entrada e saída rodam no top layer.
CodeCódigo
<button type="button" popovertarget="vls-pop">Open the popover</button>
<div id="vls-pop" popover vl-state="top-layer">
<p>Entry and exit run in the top layer.</p>
</div>
DetailsDetalhes
All 5 vl-state values, 1 ExperimentalTodos os 5 valores de vl-state, 1 Experimental
enter-exit expand on-checked (Experimental) smooth top-layer
Text effects.Efeitos de texto.
Text presets across the effect and enter attributes. Word-level effects need the words as separate elements, so the markup carries one span per word.Presets de texto nos atributos effect e enter. Efeitos por palavra precisam das palavras como elementos separados, então a marcação traz um span por palavra.
Scroll away and back to replayRole para longe e volte para repetir
Credits that write themselves.Créditos que se escrevem sozinhos.
Markup first.Primeiro a marcação.
CodeCódigo
<h3 vl-enter="text-reveal-up">Markup first.</h3>
DetailsDetalhes
Then the rest.Depois o resto.
CodeCódigo
<h3 vl-enter="text-reveal-down">Then the rest.</h3>
DetailsDetalhes
Words rise one by one
As palavras sobem uma a uma
CodeCódigo
<h3 vl-children="stagger" vl-stagger="120ms">
<span vl-effect="text-word-rise">Words</span>
<span vl-effect="text-word-rise">rise</span>
<span vl-effect="text-word-rise">one</span>
<span vl-effect="text-word-rise">by</span>
<span vl-effect="text-word-rise">one</span>
</h3>
DetailsDetalhes
A line wipes in.Uma linha entra em wipe.
CodeCódigo
<h3 vl-effect="text-line-reveal">A line wipes in.</h3>
DetailsDetalhes
vl-enter="fade-up"
CodeCódigo
<p vl-effect="typewriter" style="--vl-type-steps: 18">vl-enter="fade-up"</p>
DetailsDetalhes
A softer typewriter.Uma máquina de escrever mais suave.
CodeCódigo
<p vl-effect="typewriter-soft">A softer typewriter.</p>
DetailsDetalhes
One-element effects.Efeitos de um só elemento.
vl-effect holds the presets that do not belong to one channel. These run on a single element. The effects that need a scroll, a scene or a component live on the page that teaches that.vl-effect guarda os presets que não pertencem a um canal. Estes rodam em um único elemento. Os efeitos que precisam de rolagem, de uma cena ou de um componente ficam na página que ensina isso.
Hover or press the tiles that reactPasse o mouse ou pressione os blocos que reagem
Effects department. One attribute each.Departamento de efeitos. Um atributo cada.
CodeCódigo
<div vl-effect="spring-up">spring-up</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="zoom-blur">zoom-blur</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="flip-in">flip-in</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="hinge-down">hinge-down</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="gradient-slide">gradient-slide</div>
DetailsDetalhes
gradient-text-color
CodeCódigo
<h3 vl-effect="gradient-text-color">gradient-text-color</h3>
DetailsDetalhes
CodeCódigo
<div vl-effect="border-beam">border-beam</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="sweep-border">sweep-border</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="glitch-lite">glitch-lite</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="scanline">scanline</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="spotlight">spotlight</div>
DetailsDetalhes
CodeCódigo
<div vl-effect="press">press</div>
DetailsDetalhes

CodeCódigo
<div vl-effect="duotone"><img src="img/set-lights.jpg" alt=""></div>
DetailsDetalhes
More vl-effect values live on Motion (7) · Scenes (5) · Components (11)Mais valores de vl-effect em Movimento (7) · Cenas (5) · Componentes (11)