HTML и кодировка символов против HTML Entity - PullRequest
3 голосов
/ 12 января 2011

При написании HTML-документа допустимо ли использовать прямой специальный символ, такой как заглавная буква C с символом cedilla снизу как обычный текст: Ç или использовать имя HTML-объекта этого характер, &Ccedil?

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

Ответы [ 3 ]

8 голосов
/ 12 января 2011

Реальные символы:

  • Печатать легче, если ваша система настроена на язык, использующий эти символы
  • Создание более читабельного кода
  • Сохранить байтов

HTML-сущности:

  • Позвольте вам более или менее забыть о кодировке символов

Очевидно, что символы с особым значением в HTML (<, & и т. Д.) Все еще должны быть представлены сущностями.

4 голосов
/ 12 января 2011

Если вы используете кодировку UTF-8, то большинство символов объекта (кроме &amp;, &gt; и &lt;) становятся избыточными.

Если вы не используете UTF-8, тогда вам нужны объекты для всего.

2 голосов
/ 12 января 2011

Все зависит от кодировки символов документа. Если вы не уверены, следует ли использовать обычный текст или версию кодировки, вы можете запустить свою страницу через W3C Validator .

Рассмотрим этот код:

<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <title>Stuff</title>
</head>
<body>
 <p>©</p>
 <p>&#169;</p>
</body>
</html>

Кодировка документа установлена ​​в UTF-8, и когда она проверяется, она возвращает ошибку:

Извините, я не могу проверить этот документ, потому что в строке 7 он содержал один или несколько байтов, которые я не могу интерпретировать как utf-8 (другими словами, найденные байты не являются допустимыми значениями в указанной кодировке символов). Пожалуйста, проверьте содержимое файла и указание кодировки символов.

...