A tecla de acesso 'n' salta para outro local na navegação da página. Saltar para o início do conteúdo.
Este documento é uma tradução. Se ocorrerem discrepâncias ou erros, o original em inglês mais recente terá precedência. Os direitos autorais originais pertencem à W3C, como indicado abaixo.
Tradutor: Portuguese Translation Team, Trusted Translations, Inc.
Público alvo: usuários, codificadores de XHTML/HTML (usando editores ou scripts), desenvolvedores de scripts (PHP, JSP, etc.), codificadores de CSS, desenvolvedores de esquemas (DTDs, XML Schema, RelaxNG, etc.), desenvolvedores de XSLT, gerentes de projetos da Web, e todos que não tenham experiência com a internacionalização e precisem de orientação sobre tópicos a serem considerados e formas de se conseguir o material no site.
Por que meu navegador perde espaços entre texto em caracteres latinos e caracteres árabes/hebraicos?
Os espaços entre caracteres latinos e caracteres árabes/hebraicos podem parecer que desaparecem se o texto for seguido por um espaço em branco dentro de um elemento de alinhamento que inclua um atributo dir.
Por exemplo, em tais navegadores o código:
<p dir="rtl"> العالمية <span dir="ltr">(W3C) </span> تخلق قواعد </p>
produziria um resultado que se pareceria com o seguinte, onde a seta indica o local do espaço que falta:
![]()
Repare que este efeito também ocorre quando texto da direita para a esquerda é incorporado em uma passagem da esquerda para a direita.
Se a seção anterior descreve a aparência de seu código, a solução é remover todos os espaços antes do tag final do elemento em alinhamento, ou remover o atributo dir (se apropriado).
Por exemplo, remover o espaço entre (W3C) e </span>:
<p dir="rtl"> العالمية <span dir="ltr">(W3C)</span> تخلق قواعد </p>
produziria um resultado com a seguinte aparência:
![]()
Repare também que, neste exemplo, o atributo dir="ltr" no elemento <span> ao redor do texto (W3C) não é de fato necessário para produzir o ordenamento correto. Não incluir o atributo ou nem uma parte do elemento span também resolverá o problema.
Os quadros a seguir mostram exemplos de códigos seguidos por uma implementação desse código nessa página, para que você possa testar o comportamento de seu agente de usuário atual.
العالمية (W3C) تخلق قواعد
العالمية (W3C) تخلق قواعد
العالمية (W3C) تخلق قواعد
العالمية (W3C) تخلق قواعد
العالمية (W3C) تخلق قواعد
Somente leia esta seção se você quiser saber os detalhes terríveis sobre o porque de disso acontecer.
O comportamento esperado quando o texto é exibido não se descreve em detalhes nas especificações XHTML/HTML, mas é descrito em especificações CSS recentes. Apesar dos exemplos nesta página não usarem CSS, os mesmos princípios se aplicam. A parte a seguir é tomada do Esboço de Trabalho CSS 2.1:
- Se 'white-space' é configurado em 'normal', 'nowrap', ou 'pre-line',
- toda tabulação (U+0009) é convertida em um espaço (U+0020)
- todos os espaços (U+0020) seguindo outro espaço (U+0020) — até mesmo um espaço antes de um alinhamento, se esse espaço tem 'white-space' for configurado em 'normal', 'nowrap' ou 'pre-line' — serão removidos.
Dado um cenário como se segue (onde as cores representam espaços, U+0020, para fácil identificação):
<ltr>A <rtl> B </rtl> C</ltr>
a especificação diz que o espaço após A é mantido, o espaço antes de B é removido, o espaço após B é mantido, o espaço antes de C é removido. Então, isso é produzido de acordo com o algorítimo bidirecional Unicode, e o resultado final é:
A BC
Repare que há dois espaços entre A e B! Os níveis incorporados podem ser expressos como segue:
11221
Dê-nos a sua opinião (em inglês).
Subscreva uma alimentação RSS.
Twitter (Notícias na página principal)
Traduzido de conteúdo em inglês datado de 2003-11-06. Última versão traduzida modificada 2009-03-05 10:31 GMT
Para obter o histórico de alterações do documento, procure qa-bidi-space no blog da i18n.
Copyright © 2003-2009 W3C® (MIT, ERCIM, Keio, Beihang), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Your interactions with this site are in accordance with our public and Member privacy statements.