Pregunta `& mdash;` o `-` ¿hay alguna diferencia en la salida de HTML?


— o —

¿Hay alguna diferencia entre estos? ¿Hay uno mejor apoyado que el otro?


75
2017-11-09 12:44


origen


Respuestas:


Los analizadores SGML (o los analizadores XML en el caso de XHTML) pueden manejar — sin tener que procesar el DTD (que no le importa a los navegadores ya que solo sorben sopa de etiquetas), mientras — es más fácil para los humanos leer y escribir en el código fuente.

Personalmente, me apegaría a un em-dash literal y me aseguraría de que mi configuración de codificación de caracteres fuera consistente.


80
2017-11-09 12:53



Ellos son exactamente el mismo personaje. Ver: http://en.wikipedia.org/wiki/Dash

Salvo los errores del navegador, mostrarán lo mismo en todos los casos, por lo que la única diferencia sería la legibilidad del código, que apuntaría a —.

O bien, si está utilizando UTF-8 como juego de caracteres en su documento HTML, puede ingresar el carácter directamente. Eso también mostraría exactamente lo mismo.


12
2017-11-09 12:52



— :: — :: \u2014

Al representar el m-dash en una cadena de texto de JavaScript para su salida a HTML, tenga en cuenta que se representa por su valor de Unicode. Hay casos en los que los caracteres ampersand ('&') no se resolverán, especialmente ciertos contextos dentro de JSX. En este caso, ninguno — ni — trabajará. En su lugar, debe usar la secuencia de escape de Unicode: \u2014.

Por ejemplo, al implementar un render() método para enviar texto desde una variable de JavaScript:

render() {
   let text='JSX transcoders will preserve the & character—to ' 
            + 'protect from possible script hacking and cross-site hacks.'
   return (
     <div>{text}</div>
   )
}

Esto dará como resultado:

<div>JSX transcoders will preserve the & character&mdash;to protect from possible script hacking and cross-site hacks.</div>

En vez de &- representación prefijada, debe usar \ u2014:

let text='JSX transcoders will preserve the & character\u2014to '…

2
2018-04-25 05:46



Podría ser que usar el código numérico es más universal, ya que es una referencia directa a un personaje en la tabla de entidades html, pero supongo que ambos funcionan en todas partes. La primera notación es simplemente más fácil de recordar para muchos personajes.


1
2017-11-09 12:50



Desde el sitio web de W3 Entidades HTML comunes utilizadas para la tipografía

En aras de la portabilidad, las referencias a entidades Unicode deben reservarse para su uso en documentos que se escribirán en los juegos de caracteres UTF-8 o UTF-16. En todos los demás casos, se deben usar las referencias alfanuméricas.

Traducción: Si está buscando el soporte más amplio, vaya con &mdash;


0
2017-08-12 01:45