—
o —
`—` o `—` C'è qualche differenza nell'output HTML?
C'è una differenza tra questi? Uno è meglio supportato dell'altro?
—
o —
`—` o `—` C'è qualche differenza nell'output HTML?
C'è una differenza tra questi? Uno è meglio supportato dell'altro?
parser SGML (o parser XML nel caso di XHTML) in grado di gestire —
senza dover elaborare la DTD (che non importa a browser come hanno appena slurp zuppa di tag), mentre —
è più facile per gli esseri umani da leggere e scrivi nel codice sorgente
Personalmente, vorrei attenermi a un em-trattino letterale e garantire che le mie impostazioni di codifica dei caratteri fossero coerenti.
Potrebbe essere che l'utilizzo del codice numerale è più universale, in quanto è un riferimento diretto a un personaggio nella tabella dell'entità HTML, ma immagino che entrambi funzionino ovunque. La prima notazione è enormemente più facile da ricordare per molti personaggi.
Sono esattamente lo stesso personaggio. Vedi: http://en.wikipedia.org/wiki/Dash
blocco delle chiamate bug del browser saranno visualizzare la stessa in tutti i casi, per cui l'unica differenza sarebbe preoccupante la leggibilità del codice, che indicare —
.
Oppure, se si utilizza UTF-8 come set di caratteri nel documento HTML, è possibile immettere direttamente il carattere. Ciò mostrerebbe anche esattamente la stessa cosa.
Si noti che questo solo vero per HTML, in XML, '&8212;' funziona sempre mentre '—' dipende dall'aver dichiarato l'entità. – Flimm
—
:: :: —
\u2014
Quando si rappresenta l'm-dash in una stringa di testo JavaScript per l'output HTML, notare che esso rappresentato dal suo valore Unicode. Ci sono casi in cui caratteri e commerciale ('&') non verranno risolti, in particolare determinati contesti all'interno di JSX. In questo caso, né lo —
né lo —
funzioneranno. Invece è necessario utilizzare la sequenza di escape Unicode: \u2014
.
Per esempio, in sede di attuazione di un metodo render()
al testo di output da una variabile JavaScript:
render() {
let text='JSX transcoders will preserve the & character—to '
+ 'protect from possible script hacking and cross-site hacks.'
return (
<div>{text}</div>
)
}
Questo stamperà:
<div>JSX transcoders will preserve the & character—to protect from possible script hacking and cross-site hacks.</div>
Invece del &
- rappresentazione prefissato, è necessario utilizzare \ u2014:
let text='JSX transcoders will preserve the & character\u2014to '…
Funziona alla grande con React. – Green
Da W3 siamo b sito Common HTML entities used for typography
Per motivi di portabilità, Unicode riferimenti di entità dovrebbe essere riservato per l'uso nei documenti certo di essere scritto in UTF-8 o UTF-16 set di caratteri. In tutti gli altri casi, dovrebbero essere utilizzati i riferimenti alfanumerici.
Traduzione: Se siete alla ricerca di un sostegno più ampio, andare con —
Solo per completezza: il trattino lungo reale ("mdash") carattere è: - e deve essere il più ampio il carattere "m" –
sì, una capitale M –