html direction
Cómo forzar que una parte del texto sea ''direction ltr'' dentro de un párrafo ''direction rtl'' (3)
Entonces, los números de teléfono siempre son ltr (de izquierda a derecha).
Trabajando en un sitio web multilingüe, necesito insertar un número de teléfono (con un prefijo ''+'' y los números separados por ''-'') dentro de un párrafo de texto que tiene la dirección rtl (para idiomas relevantes, por supuesto)
Así que tengo algo como esto:
.ltr #test {direction:ltr}
.rtl #test {direction:rtl}
#phone {direction:ltr}
<div class="ltr"><p id="test">Please call to <span id="phone">+44-123-321</span> for some help.</p></div>
<div class="rtl"><p id="test">Please call to <span id="phone">+44-123-321</span> for some help.</p></div>
Por supuesto, esto no funciona porque la '' direction '' solo funciona para elementos de bloque y '' span '' es un elemento en línea. Necesito que el número de teléfono esté dentro del párrafo, así que no puedo cambiar '' span '' a '' display:inline ''
Estoy siendo claro?
¿Cómo hacer que funcione?
Intenta agregar #phone {direction:ltr; display:inline-block} #phone {direction:ltr; display:inline-block}
Otra opción podría ser usar dir=''ltr'' atributo dir=''ltr'' , en su elemento en línea:
<p id="text">Please call to <span dir=''ltr''>+44-123-321</span> for some help</p>
Tenga en cuenta que incluyendo ‎ en su HTML es tan malo como usar dir=''ltr'' atributo dir=''ltr'' .
Puede usar un marcador de dirección de Unicode justo antes del signo + para darle al algoritmo la sugerencia que necesita.
Estos son:
LTR: 0x200E
RTL: 0x200F
Asi que:
<p id="text">Please call to <span id="phone">‏+44-123-321</span> for some help</p>
Ver this respuesta SO para más detalles.