Подтвердить что ты не робот

Должен ли я использовать html-объекты? Зачем?

Являются ли HTML-объекты еще полезными или я просто создаю HTML-кодированные UTF-документы? Пожалуйста, объясните, почему.

4b9b3361

Ответ 1

Если кодировка установлена ​​правильно (и документ сохранен как UTF-8), вы сможете работать только с символами. Из W3C:

Использование кодировки, такой как UTF-8, означает, что вы можете избежать необходимости в большинстве экранов и просто работать с символами.

http://www.w3.org/International/questions/qa-escapes

Однако вам все равно нужно использовать объекты для специальных символов, например, больше/меньше.

Ответ 2

Сущности полезны в файлах исходного кода программы (в программах, которые выводят HTML). Многие стандарты кодирования говорят, что файлы должны быть в ASCII. За исключением, конечно, файлов, которые фактически содержат текстовое содержимое - например, файлы .po с переводами.

Когда у вас есть длинный файл с несколькими не-ASCII-символами внутри, тогда очень легко сохранить файл в неправильном кодировании, не заметив, что ваши персонажи были ввинчены.

Еще одна веская причина использовать символы, отличные от ASCII, похожи на похожие хрустали. Можете ли вы определить разницу между следующими двумя строками кода:

print "<title>" + pagename + " – " + sitename + "</title>";
print "<title>" + pagename + " - " + sitename + "</title>";

Но с помощью сущностей разница очевидна:

print "<title>" + pagename + " &ndash; " + sitename + "</title>";
print "<title>" + pagename + " - " + sitename + "</title>";

Но вне файлов исходного кода программы UTF-8 - это, безусловно, путь.

Ответ 3

По моему опыту, пока ваши данные действительно являются UTF-8, и вы правильно говорите браузеру, что это UTF-8, вам не нужно использовать сущности. Кроме таких вещей, как & lt;, & конечно.