Браузер переводит одинарные кавычки (') в "s и игнорирует" \, HTML / Javascript - PullRequest
1 голос
/ 10 февраля 2011

Этот вопрос можно разделить на две части:

Во-первых, браузер игнорирует экранирование кавычек: картинка стоит тысячу слов: http://i.stack.imgur.com/ZmlgJ.png

Это нене случилось раньшеКогда это поведение изменилось?
Кроме того, почему браузер переводит одинарные кавычки в двойные?И почему это не нужно убегать?Например: http://i.stack.imgur.com/endzi.png (Код в инспекторе - это тот же код в окне браузера)

Заранее спасибо!

Ответы [ 2 ]

4 голосов
/ 10 февраля 2011

Во-первых, браузер игнорирует экранирование кавычек

HTML - это не JavaScript.Символы в кавычках внутри значения атрибута, которые соответствуют символам в кавычках, используемым для разделения этого значения, должны быть представлены сущностями , без префикса.

<foo myAttribute="This value includes a double quote character: &quot;">

Это непроизошло раньше

Да, это произошло.

Кроме того, почему браузер переводит одинарные кавычки в двойные?

Браузеры анализируют HTMLв ДОМ.На этом этапе нет кавычек, только атрибуты и значения.

Когда вы используете инспектор DOM, он сериализуется обратно в HTML.Использование двойных кавычек является соглашением.Почти весь HTML написан с использованием " для разделения значений атрибутов.

Этот конкретный инспектор DOM даже не сериализует данные.Это просто обеспечивает визуализацию.Здесь он использует изменение цвета для определения значения атрибута.

0 голосов
/ 10 февраля 2011

Я не уверен, является ли это причиной вашей проблемы, но кажется, что в кавычках в части 'Beginner's spear'

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