0Pricing
Web Accessibility Academy · Aula

Fragmentos, portais e a armadilha da ordem no DOM

Mantenha a ordem renderizada igual à ordem na árvore de acessibilidade.

Fragmentos, portais e a armadilha da ordem no DOM é uma aula grátis de Web Accessibility Academy no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Web Accessibility Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Web Accessibility Academy inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Source Order Is the Default Order

Screen readers and the keyboard follow the DOM order, the order elements appear in the document. CSS may move things visually, but reading order does not change.

Fragments Add No Extra Box

A React Fragment groups children without adding a wrapper div. That keeps your DOM clean and avoids breaking lists or tables with stray elements.

<>
  <th>Name</th>
  <th>Email</th>
</>

Why a Wrapper div Can Hurt

An extra div inside a list or table can break the parent-child structure assistive tech expects. A Fragment avoids that invalid nesting entirely.

Portals Render Elsewhere

A Portal renders children into a different DOM node, often the document body. It is the standard way to mount modals above everything else.

createPortal(<Modal />, document.body);

Portals Keep React Context

Even though the markup lands elsewhere, a portal stays in your component tree. State and context flow normally, so logic is unaffected.

The DOM Order Trap

A portal at the end of body can appear after unrelated content. Tabbing may jump to a far-off spot, so focus management becomes essential for portals.

Move Focus Into the Portal

When a portal opens, the keyboard does not follow automatically. Explicitly move focus into the modal so the user is where the new content is.

Trap and Return Focus

While a portal modal is open, keep Tab inside it. On close, return focus to the element that opened it, since DOM proximity will not do this for you.

Visual Order Versus Reading Order

CSS flexbox order or grid placement can rearrange the screen. The tab order still follows the source, so avoid reordering interactive content with CSS.

Keep Source Order Meaningful

Write your JSX so the source order matches the logical reading flow. Then both sighted and screen reader users encounter content in the same sensible sequence.

Test by Tabbing

Press Tab through your app and watch where focus goes. If it jumps somewhere unexpected, your DOM order or a portal needs attention.

Quick Check

You mount a modal with a portal into document.body. What new responsibility does that create?

Recap: Order and Portals

Use Fragments to avoid invalid wrappers, keep source order logical, and manage focus carefully whenever a portal renders content elsewhere. 🧩

Perguntas Frequentes

A aula “Fragmentos, portais e a armadilha da ordem no DOM” é grátis?

Sim — o texto completo de “Fragmentos, portais e a armadilha da ordem no DOM” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Web Accessibility Academy, atualize para CoddyKit PRO. O curso de Web Accessibility Academy inclui 4 aulas no total.

O que vou aprender em “Fragmentos, portais e a armadilha da ordem no DOM”?

Mantenha a ordem renderizada igual à ordem na árvore de acessibilidade. Você pratica Web Accessibility Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Web Accessibility Academy?

Nenhuma experiência prévia é necessária. Web Accessibility Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.

Quanto tempo leva a aula “Fragmentos, portais e a armadilha da ordem no DOM”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Web Accessibility Academy?

Sim. Cada aula de Web Accessibility Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Alterações de rota sem recarregar a página
  2. Gerenciando o foco com refs e useEffect
  3. Fragmentos, portais e a armadilha da ordem no DOM
  4. jsx-a11y e proteções no nível dos componentes
← Voltar para Web Accessibility Academy