`doctype` против` charset` в HTML 5

Мне интересно узнать о взаимосвязи между DOCTYPE и charset в файле HTML 5.

Использование шаблона HTML по умолчанию в VSCode создает следующую разметку:

<!DOCTYPE html>
<html>
<head>
    <meta charset = "utf-8" />
    <meta http-equiv = "X-UA-Compatible" content = "IE=edge">
    <title>Page Title</title>
    <meta name = "viewport" content = "width=device-width, initial-scale=1">
    <link rel = "stylesheet" type = "text/css" media = "screen" href = "main.css" />
    <script src = "main.js"></script>
</head>
<body>

</body>
</html>

У меня вопрос, нужны ли нам и DOCTYPE, и charset?

Если для doctype задано значение html (что относится к HTML 5), и мы знаем, что utf-8 является charset по умолчанию для HTML 5, должны ли мы указывать charset с помощью тега meta или браузер знает?

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
1
0
870
3

Ответы 3

My question is, do we need both DOCTYPE and charset?

да

If the doctype is set to html (which refers to HTML 5), and we know that utf-8 is the default charset for that doctype

Это не так. Браузеры выполняют сложное обнюхивание для определения кодировки символов. Его явное указание более надежно.

Возможно, я перепутал "по умолчанию" с "предпочтительной" кодировкой.

Ben 11.10.2018 12:42

Объявление <!DOCTYPE html> используется для информирования браузера посетителя веб-сайта о том, что отображаемый документ является документом HTML. <!DOCTYPE html> - это доктайп html 5.

@charset определяет кодировку символов, используемую в таблице стилей, а <meta charset = "utf-8" /> определяет кодировку для документа HTML.

«отображаемый документ является HTML-документом». - Нет, вы думаете о HTTP-заголовке Content-Type. Doctype сообщает браузеру выполнять рендеринг в стандартном режиме.

Quentin 11.10.2018 12:51

"charset определяет кодировку символов, используемую в таблице стилей" - Нет. Указывает кодировку для документа HTML.

Quentin 11.10.2018 12:52
@charset определяет кодировку символов, используемую в таблице стилей, а <meta charset = "utf-8" /> определяет кодировку для документа HTML.
Anand 11.10.2018 13:15

Да, но никто не упомянул CSS или @charset до вашего комментария только что.

Quentin 11.10.2018 13:16

Я соответствующим образом отредактировал свой ответ

Anand 12.10.2018 12:31

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

Так что да ... эмпирическое правило ... всегда добавляйте настройки по умолчанию в свой код, на всякий случай.

С наилучшими пожеланиями.

Другие вопросы по теме