Web e frontend · Misto

Hebraico e da direita para a esquerda: o que quebra e como consertar

Em uma linha: A maioria dos bugs de direita para esquerda vem de usar left e right em vez de start e end — e de texto misto que colide em uma linha.

O básico

Declare idioma e direção no nível do documento. A partir daí, use propriedades lógicas — start e end em vez de left e right — para margens, bordas e posição. Cada lugar que fica com left explícito é um bug futuro na segunda versão do site.

Ícones direcionais, como setas, devem espelhar. Não direcionais, como um símbolo de play, não.

Texto misto

Uma linha com hebraico, inglês e números é onde a direção se confunde. A pontuação no fim da frase pula, números de versão se invertem e endereços web quebram.

A solução é o isolamento: envolva um segmento em outro idioma ou código em um elemento que declare sua direção. Isso resolve a maioria dos casos sem truques.

Números de telefone, identificadores e strings técnicas ficam melhor exibidos como esquerda para direita explícito, mesmo dentro de uma frase em hebraico.

O que mais verificar

Scroll horizontal e controles deslizantes, tabelas com colunas numeradas, gráficos cujo eixo deve se inverter, e exportação para arquivos — especialmente PDF, onde o suporte ao hebraico costuma falhar no nível de fonte e não de código.

Indo mais fundo

Teste o sistema em ambos os idiomas a cada publicação, não só em hebraico. Problemas de direita para esquerda entram por componentes externos testados em uma só direção — por isso vale escolher bibliotecas que declaram suporte e envolver o resto em uma camada própria que corrige o comportamento em um único lugar.