2012-01-02 10 views
14

consideran este título de una página web:
enter image description hereCambio de la dirección de HTML <title> etiqueta a derecha a izquierda

Se trata de una mezcla de texto de idiomas de derecha a izquierda y de izquierda a derecha, y la direccionalidad de todo el texto podría ser:

  1. izquierda a derecha, si usted fragmentos de inserción dentro del texto RTL litros
    enter image description here

  2. de derecha a izquierda, si usted fragmentos de inserción LTR dentro del texto RTL
    enter image description here

En algunas páginas web, es necesario proporcionar un título de derecha a izquierda, entremezclado con izquierda fragmentos de texto a la derecha. Sin embargo, el navegador no lo formatea correctamente. Representa el contenido completo de <title> con la direccionalidad ltr. Esto causa un título, que se debe mostrar como
enter image description here
que se muestra como
enter image description here

Sé que CSS no está funcionando allí. ¿Hay alguna forma de obligar al navegador a representar el <title> con la direccionalidad correcta?

+0

Por qué no escribir el título completo a la inversa para un lenguaje particular, como: - *** enod eb t'nac sihT *** :-P –

Respuesta

10

Puede intentar usar el carácter Unicode RIGHT-TO-LEFT OVERRIDE. Ver here.
Es decir, comience el texto del título con &#x202E;
Una prueba rápida muestra que funciona, al menos en mi navegador; no estoy seguro de si funcionará en todos los navegadores. Y puede escribir pizza al revés. Use con cuidado.

+3

Seguramente escribe Pizza "hacia atrás" (de derecha a izquierda), ya que eso es lo que * anula * significa aquí. Esta es la razón por la cual el EMPAREJAMIENTO DE DERECHO A LA IZQUIERDA es mejor: no afecta la dirección de escritura del texto fuertemente direccional, como "Pizza", por lo que no es necesario escribirlo en la fuente como "azziP" (lo cual no sería bueno a su clasificación en el motor de búsqueda). –

0

No hay forma de obligar al navegador a cambiar de dirección. Puede, por supuesto, escribir la oración al revés, y hay API que pueden obtener un texto RTL con intención de ser, y producir un texto LTR cuyo resultado final parece una oración RTL válida.

Tenga en cuenta que algunos navegadores, especialmente en las ubicaciones de idioma RTL, obtienen un navegador que es RTL en primer lugar. Es decir, su título es RTL en absoluto. Para lo bueno y para lo malo. Entonces, incluso si aplica un truco de RTL a LTR como lo describí, esos usuarios lo verán al revés.

+0

¿Puedes nombrar una API para hacer eso? –

+0

Busque algoritmos BiDi.dll o BiDi. Eche un vistazo a esto (no estoy seguro si ayuda): http://wiki.winehq.org/BiDi. Además, esta herramienta le permite cambiar RTL/LTR en una interfaz web (no una API, pero es probable que pueda comprar una de ellas): http://www.pixiesoft.com/flip. Es una interfaz hebrea, pero lo administrarás. –

4

Ha intentado:

<title>left to right &#x202E;right to left</title> 

Para el cuerpo, puede utilizar CSS (direction: rtl; y unicode-bidi: bidi-override;) o por marcadores (<bdo dir="rtl">).

Demostración: http://jsfiddle.net/ThinkingStiff/hD5Sp/

HTML:

<span>left to right <bdo dir="rtl">"right to left"</bdo> left to right</span><br /> 
<span class="rtl">right to left <span class="ltr">"left to right"</span> right to left</span> 

CSS:

.rtl { 
    direction: rtl; 
    unicode-bidi: bidi-override; 
} 

.ltr { 
    direction: ltr; 
    unicode-bidi: bidi-override;  
} 

Salida:

enter image description here

8

Uso el carácter de INCORPORACIÓN DE DERECHO A LA IZQUIERDA (RLE, U + 202B) al comienzo del contenido del elemento title, p.

<title>&#x202b;אבג Hello ابثج</title> 

RLE se describe y se utiliza como un carácter normalmente para ser utilizado (junto con POP Formato direccional) para incrustar una racha de texto de izquierda a derecha en texto o viceversa de derecha a izquierda, en situaciones que no son manejados adecuadamente por mecanismos automáticos. Pero parece funcionar también para los elementos title, al menos en IE, Firefox y Opera.

0

¿Es posible que parte del título sea de derecha a izquierda y parte de ella de izquierda a derecha?

por ejemplo:

<title> This part is right to left | This part is left to right | This part is righ to left </title> 
0

Utilice simplemente este reglas CSS para cubrir todas las situaciones:

*[dir="ltr"] { 
 
    direction: ltr; 
 
    unicode-bidi: embed; 
 
} 
 
*[dir="rtl"] { 
 
    direction: rtl; 
 
    unicode-bidi: embed; 
 
} 
 
bdo[dir="ltr"] { 
 
    direction: ltr; 
 
    unicode-bidi: bidi-override; 
 
} 
 
bdo[dir="rtl"] { 
 
    direction: rtl; 
 
    unicode-bidi: bidi-override; 
 
}

Cuestiones relacionadas