Почему не следует использовать `` `, чтобы избежать одиночных кавычек?
Как указано в Когда одиночные кавычки в HTML стали настолько популярными? и JQuery встроенная цитата в атрибуте, запись в Википедии на HTML говорит следующее:
Символ одиночной кавычки ('), когда используется для указания значения атрибута, также должен быть экранирован как '
или '
(не должен быть экранирован как '
, за исключением документов XHTML), когда он появляется внутри значение самого атрибута.
Почему не следует использовать '
? Кроме того, "
безопасен для использования вместо "
?
Ответы
Ответ 1
"
находится в официальном списке допустимых объектов HTML 4, но '
нет.
От C.16. Ссылка "Именованный символ" :
Именованная символьная ссылка '
(апостроф, U + 0027) был введенный в XML 1.0, но не появляются в HTML. Авторы должны поэтому используйте '
вместо '
работает так, как ожидалось, в HTML 4 пользовательских агентов.
Ответ 2
'
не является частью стандарта HTML 4.
"
, однако, так хорошо использовать.
Ответ 3
"
действителен как в HTML5, так и в HTML4.
'
действителен в HTML5, но не HTML4. Однако большинство браузеров поддерживают '
для HTML4.
Ответ 4
Если вам нужно написать семантически правильную разметку, даже в HTML5, вы не должны использовать '
для выхода из одиночных кавычек. Хотя, я могу себе представить, что вы на самом деле означали апостроф, а не одну цитату.
одиночные кавычки и апострофы не совпадают, семантически, хотя они могут выглядеть одинаково.
Вот один апостроф.
Используйте ’
, чтобы вставить его, если вам нужна поддержка HTML4.
В британском английском используются одинарные кавычки:
"Он сказал мне" попробовать ", - сказал я.
Цитаты попадают парами. Вы можете использовать:
<p><q>He told me to <q>give it a try</q></q>, I said.<p>
чтобы иметь вложенные кавычки семантически правильным способом, откладывая замену действительных символов на механизм рендеринга. На эту подстановку могут влиять правила CSS, например:
q {
quotes: '"' '"' '<' '>';
}
Старая, но по-прежнему актуальная статья о семантически правильной надбавке: Проблема с EM n EN (и другими теневыми символами).
Ответ 5
Если вам действительно нужны одинарные кавычки, апострофы, вы можете использовать
html | numeric | hex
‘ | ‘ | ‘ // for the left/beginning single-quote and
’ | ’ | ’ // for the right/ending single-quote