2010-11-09 2 views

ответ

80

парсеры SGML (или XML-парсеры в случае XHTML) может обрабатывать — без обработки DTD (который не имеет значения для браузеров, поскольку они просто хлебать суп тегов), в то время как — проще для людей, чтобы читать и напишите в исходном коде.

Лично я придерживался литеральной эмблемы и гарантировал бы, что мои настройки кодировки символов будут согласованы.

1

Может быть, использование кода с цифрами является более универсальным, поскольку это прямая ссылка на символ в таблице сущностей html, но я думаю, что они оба работают повсюду. Первое обозначение просто запоминается для многих персонажей.

12

Это точно такой же характер. См. Так: http://en.wikipedia.org/wiki/Dash

Запрет на использование браузеров во всех случаях будет одинаковым, поэтому единственное различие будет касаться считывания кода, которое будет указывать на —.

Или, если вы используете UTF-8 в качестве кодировки в своем HTML-документе, вы можете ввести символ напрямую. Это также будет отображаться точно так же.

+5

Обратите внимание, что это верно только для HTML, в XML, '&8212;' всегда работает, тогда как '—' зависит от объявления объекта. – Flimm

2

— :: — :: \u2014

При представлении м-тире в текстовой строке JavaScript для вывода в HTML, обратите внимание, что он будет представлен своим значением Юникода. Бывают случаи, когда символы амперсанда ('&') не будут разрешены - в частности, определенные контексты в JSX. В этом случае ни —, ни — не будут работать. Вместо этого вам нужно использовать escape-последовательность Unicode: \u2014.

Например, при реализации render() метода для вывода текста из переменной JavaScript:

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

Это Выведет:

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

Вместо & - приставка представления, вы должны использовать \ u2014:

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

Прекрасно работает с реакцией. – Green

-1

От W3 мы б сайт Common HTML entities used for typography

Ради мобильности, объектные ссылки Unicode должны быть зарезервированы для использования в документах некоторых должны быть записаны в наборах символов UTF-8 или UTF-16. Во всех остальных случаях следует использовать буквенно-цифровые ссылки.

Перевода: Если вы ищете широкую поддержку, идти с &mdash;

Смежные вопросы