—
или —
Есть ли разница между ними? Поддерживается ли одна из них лучше, чем другая?
—
или —
Есть ли разница между ними? Поддерживается ли одна из них лучше, чем другая?
Синтаксические анализаторы SGML (или синтаксические анализаторы XML в случае XHTML) могут обрабатывать —
без обработки DTD (что не имеет значения для браузеров, поскольку они просто суп-тег-суп), тогда как —
легче для людей для чтения и записи в исходном коде.
Лично я буду придерживаться буквальной em-тире и убедитесь, что мои настройки кодировки символов согласованы.
Они точно такие же. См.: http://en.wikipedia.org/wiki/Dash
Запрет ошибок браузера будет отображаться одинаково во всех случаях, поэтому разница будет только в отношении читаемости кода, которая будет указывать на —
.
Или, если вы используете UTF-8 в качестве кодировки в своем HTML-документе, вы можете ввести символ напрямую. Это также будет отображаться точно так же.
—
:: —
:: \u2014
Представляя m-dash в текстовой строке JavaScript для вывода в HTML, обратите внимание, что она будет представлена значением Unicode. Существуют случаи, когда символы амперсанда ('& amp;') не будут разрешены, особенно в определенных контекстах в 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—to protect from possible script hacking and cross-site hacks.</div>
Вместо представления с префиксом &
следует использовать \u2014:
let text='JSX transcoders will preserve the & character\u2014to …'
С веб-сайта W3 Общие объекты HTML, используемые для типографии
Для переносимости ссылки на объекты Unicode должны быть зарезервированы для использования в документах, которые должны быть записаны в наборах символов UTF-8 или UTF-16. Во всех остальных случаях следует использовать буквенно-цифровые ссылки.
Перевод: если вы ищете самую широкую поддержку, перейдите к —
Может быть, использование кода с цифрами является более универсальным, поскольку это прямая ссылка на символ в таблице сущностей html, но я думаю, что они оба работают повсюду. Первое обозначение просто легче запомнить для множества символов.