При загрузке файлов с диска ваш браузер не имеет заголовка HTTP Content-Type для чтения кодировки, поэтому он угадает.Чтобы угадать код документа, он использует текущую кодировку вашей операционной системы, фактические байты в файлах и информацию внутри самого файла.
Как писал Джонатан, вы можете добавить
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
элемент, который поможет браузеру использовать правильный тип контента.В любом случае, обратите внимание, что этот элемент часто будет игнорироваться браузерами, если ваш документ отправляется с неверно настроенного HTTP-сервера, который явно указывает другую кодировку заголовка Content-Type.