HTML5: что лучше - использовать символьную сущность против непосредственного использования символа? - PullRequest
24 голосов
/ 21 марта 2012

Я недавно заметил, что многие высококлассные сайты используют персонажей непосредственно в их источнике, например:

<q>“Hi there”</q>

Вместо:

<q>&ldquo;Hi there&rdquo;</q>

Какой из них предпочтителен? В прошлом я всегда использовал объекты, но прямое использование символа кажется более читабельным, и в документе Unicode все будет хорошо.

Ответы [ 5 ]

15 голосов
/ 21 марта 2012

Если кодировка UTF-8, нормальные символы будут работать нормально, и нет никаких причин не использовать их.Браузеры, которые не поддерживают UTF-8, будут иметь много других проблем при отображении современной веб-страницы, так что не беспокойтесь об этом.

Так что использовать символы проще и удобнее для чтения, и я бы предпочелсделать это.

Он также экономит пару байтов, что неплохо, хотя при использовании сжатия и минимизации можно получить гораздо больше.

2 голосов
/ 21 марта 2012

Основное преимущество, которое я вижу при кодировании символов, заключается в том, что они будут выглядеть правильно, даже если страница интерпретируется как ASCII.

Например, если ваша страница представляет собой просто необработанный HTML-файл, по умолчаниюНастройки на некоторых серверах будут обслуживать его как text/html; charset=ISO-8859-1 ( по умолчанию в HTTP 1.1 ).Даже если вы установите метатег для типа содержимого, заголовок HTTP имеет более высокий приоритет.

Вопрос, зависит ли это от того, насколько вероятно, что страница будет обслуживаться неправильно настроенным сервером.

1 голос
/ 21 марта 2012

Данный пример определенно неверен, как в теории, так и на практике, в HTML5 и в HTML 4. Например, в обсуждениях HTML5 q разметка говорится: «Знак препинания (такой как кавычки), который цитирует содержимое элемента, не должен появляться непосредственно перед, после или внутри элементов q; они будут вставлены в рендеринг пользовательским агентом. ”

То есть используйте разметку «q» или знаки препинания, а не оба. Последнее лучше по всем практическим соображениям.

Что касается вопроса о символах и ссылках на сущности, то первые предпочтительнее для удобства чтения, но тогда вам нужно знать, как сохранить данные в формате UTF-8 и правильно объявить кодировку . Это не ракетостроение, а обычно лучше. Но если ваша среда разработки UTF-8 враждебна, вам не нужно стыдиться использования ссылок на сущности.

1 голос
/ 21 марта 2012

Использование символов напрямую.Их легче читать в источнике (что важно, поскольку люди должны их редактировать!) И требуют меньшей пропускной способности.

0 голосов
/ 29 августа 2018

Лучше использовать символы напрямую.Они предназначены для: более удобного чтения кода.

Руководства Google по стилю HTML поддерживают то же самое.

...