—
або —
Чи є різниця між ними? Чи підтримується один краще, ніж інший?
—
або —
Чи є різниця між ними? Чи підтримується один краще, ніж інший?
Відповіді:
Синтаксичні аналізатори SGML (або XML-синтаксичні аналізатори у випадку XHTML) можуть обробляти —
без необхідності обробляти DTD (що не має значення для браузерів, оскільки вони просто шматують суп із тегів), тоді —
як людям легше читати та писати у вихідному коді.
Особисто я дотримувався буквального тире та гарантував, що мої налаштування кодування символів були узгодженими.
Вони абсолютно однакові персонажі. Див .: http://en.wikipedia.org/wiki/Dash
За винятком помилок браузера вони відображатимуться однаково у всіх випадках, тому єдина різниця полягатиме в читабельності коду, на що вказуватиме —
.
Або, якщо ви використовуєте UTF-8 як набір символів у своєму документі HTML, ви можете ввести символ безпосередньо. Це також відображатиме те саме.
&8212;
завжди працює, тоді як це —
залежить від того, де оголошено сутність.
—
:: —
::\u2014
Представляючи m-тире в текстовому рядку JavaScript для виводу в HTML, зверніть увагу, що він буде представлений своїм значенням Unicode. Бувають випадки, коли символи амперсанда ('&') не можуть бути вирішені - особливо певний контекст в JSX. У цьому випадку ні, ні —
не —
буде працювати. Замість цього вам потрібно використовувати керуючу послідовність 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, але я думаю, вони обидва працюють скрізь. Першу нотацію просто набагато легше запам’ятати для багатьох персонажів.