`—` или` —` есть ли разница в выводе HTML? - PullRequest
77 голосов
/ 09 ноября 2010

— или —

Есть ли разница между ними?Один лучше поддерживается чем другой?

Ответы [ 5 ]

82 голосов
/ 09 ноября 2010

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

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

13 голосов
/ 09 ноября 2010

Они абсолютно одинакового персонажа.См .: http://en.wikipedia.org/wiki/Dash

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

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

5 голосов
/ 25 апреля 2017

— :: — :: \u2014

Представляя m-тире в текстовой строке JavaScript для вывода в HTML, обратите внимание, что он представлен значением Unicode.Существуют случаи, когда символы амперсанда ('&') не будут разрешены, особенно определенные контексты в 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 '…
2 голосов
/ 12 августа 2017

с веб-сайта W3 Общие объекты HTML, используемые для типографии

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

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

1 голос
/ 09 ноября 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...