Это связано с отсутствием обязательных тегов html. Некоторые выпуски Firefox фактически игнорируют весь документ при отсутствии тегов (выпуск Firefox Developer Edition 2020). В любом случае я попробовал приведенный ниже код, и он загружается. html во всех браузерах. Если ваш Firefox все еще загружается в формате pdf, значит, он настроен для этого. Убедитесь, что ваша firefox настроена для загрузки страницы html как. html Если вы можете выполнить настройку, возможно, вам следует переустановить новый браузер.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<button onclick="download()">Download html file</button>
<script type="text/javascript">
function download() {
var element = document.createElement("a");
var inshtml = `hello world`;
element.setAttribute(
"href",
"data:text/plain;charset=utf-8," + encodeURIComponent(inshtml)
);
element.setAttribute("download", "htmlTest.html");
element.style.display = "none";
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
</script>
</body>
</html>