2010-07-22 3 views
19

Я вообще кодирую HTML-код любого пользовательского контента, который я создаю на своем веб-сайте, поэтому амперсанды становятся & и так далее. Мне было интересно, нужно ли это делать (с точки зрения стандартов) для любого динамически генерируемого метатега по всему сайту?Должны ли метатеги быть закодированы в HTML?

ответ

22

Абсолютно. Весь контент в документе HTML должен быть закодирован таким образом.

+0

Спасибо за ответы. – marcusstarnes

+0

Я не уверен, что вам нужно закодировать атрибут 'href' тегов' a'. – gamliela

+0

@gamliela: Это зависит от того, является ли это html5 или нет. Чтобы соответствовать стандартам во всех xml-based (aka atom или rss-каналах), вы определенно должны. С html5 ситуация немного сложнее (см. Http://stackoverflow.com/a/19442133/8313 для более невероятно хорошо исследованной информации). Когда вы сомневаетесь, закодируйте свои амперсанды. –

3

Да. Так, например, кавычки не закрывают атрибут content для мета-элемента, который вызывает недопустимый HTML.

14

Если вы имеете в виду что-то вроде этого:

<meta name="description" content="Some stuff, other stuff &amp; even more stuff!" /> 

Да, вы должны кодировать амперсанд и другие специальные символы, к объектам, так что ваши мета-теги проверки.

Смежные вопросы