在Mac中,浏览器显示纯文本而不是HTML

9
我想写一个像这样的html文档:
<html>
<body>

<h1>My First Heading</h1>

</body>
</html>

我将其写在桌面上,并将其命名为hello.html,但是当我使用Firefox或Safari打开此文件时,浏览器会显示整个文本(包括<html>和所有文本),而不仅仅是显示my first heading!问题出在哪里?

你是否开启了隐藏扩展名?因为你可能已经将文件保存为hello.html.txt。使用右键单击->获取信息来检查。 - user23127
不,隐藏扩展名已关闭,文件名最初为hello.html.rtf,但我将其重命名为hello.html。 - Navid777
2
然后你将它保存为rtf格式,这不是纯文本。转到顶部菜单栏->文本编辑->首选项并在顶部选择纯文本。然后再次保存。 - user23127
我的情况有些不同,但这是谷歌上的第一个结果,所以我会把它放在这里。我从一个REST端点返回HTML,并且它也显示为文本。问题在于缺少一个值为"text/html"的“content-type”头。一旦添加,HTML就会按预期显示。 - shoe
8个回答

15
问题出在我使用“Text Edit”应用程序编写HTML文档时,它保存文件时带有“.rtf”扩展名,这不是纯文本,所以更改文件名为“hello.html”并没有改变任何内容。
解决此问题有两种方法:
1)如果坚持使用“Text Edit”,您应该转到“text edit-> preferences”,并在页面顶部选中“plain text”,然后保存时将其保存为纯文本。
2)您可以使用一些文本编辑器,如Lime Edit。

在此留个言,以便其他人查询。在TextEdit 1.13 (333)版本中,此选项为格式 > 转为纯文本。 - Behram Mistree
只是补充一下,我还更改了文本编辑->首选项->打开和保存->将HTML文件显示为HTML代码而不是格式化文本。如果没有这个设置,我就无法看到编写的HTML代码。 - msashish

4

最有可能的原因是您使用了所见即所得编辑器并将文档保存为HTML。

这将创建一个HTML源代码的HTML表示。

请改用文本编辑器。我喜欢Sublime Edit 2。


使用文本编辑器(或强制 TextEditor 保存为纯文本模式...但最好使用一个好的编辑器,你可以获得其他好处,如语法高亮显示)。 - Quentin
这是我使用的工具。有很多选择可供选择。TextWrangler是免费的。 - Quentin
为什么编辑器的选择对于文件保存时设置文件扩展名很重要? - feeela
@feeela - 这不是我说的,也不是事实。原帖有两个问题,这个答案只解决了其中一个。另一个问题在评论中已经解决。 - Quentin
@quentin现在我该怎么办?接受你的答案并投票支持user23127的评论,还是写一个包含两者的答案? - Navid777

0
我发现我的Web服务器上的父文件夹包含一个旧的.htaccess文件,导致HTML文件显示为纯文本。重新命名/修改.htaccess文件或将我的HTML文件移动到另一个文件夹中解决了问题。

0
使用文本编辑器,如Dreamweaver、Sublime。

Sublime http://www.sublimetext.com/2

请确保您的文件以 .html 结尾而不是 .txt


编辑器与文件扩展名有什么关系?除了没有任何关系。 - feeela
以防万一。在Sublime Text中打开一个新窗口而不更改格式可能会导致这种情况(我的意思是hello.html.txt)。 - Dimitri Kouvdis
@feeela 看看下面的答案,看看会发生什么。这是一个常见的事情。我这样做只是为了在故障排除时让 OP 意识到。 - Dimitri Kouvdis

0

下载安装"TextWrangler"(适用于Mac),将您的HTML内容粘贴到其中一个新文件中,并使用.html链接保存。不要使用TextEdit。


0
如果您使用基本文本编辑器(如终端中的nano)打开文件,您可能会看到有许多额外的行添加到您的基本HTML代码中。这就是我遇到的情况。
我删除了除了我想要的内容之外的所有行,最终它正确地呈现出来了。

0

我在TextEdit中也遇到了同样的问题。解决方法是-进入“格式”,然后选择“制作纯文本”。保存文档并在浏览器中重新打开。这在我的情况下起作用了。希望对你也有用。


-1

我有相同的问题。 我正在使用TextEdit。通过以下更改解决了问题:text edit->preferences>New document>Fromat>plain text(不是Rich text)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接