簡體   English   中英

如何在 TextEdit 中保存 html 文件,以便它在瀏覽器中正確打開?

[英]How to save an html file in TextEdit so that it opens correctly in a browser?

剛剛在 Mac 上的 TextEdit 中創建了一個簡單的 html 文件。 看起來像這樣。

<html>

        <head>

                <title>My First Web Page</title>

        </head>

        <body>

                <h1>Welcome to My First Web Page</h1>

                <p>This is an HTML page that I created in TextEdit.</p>

        </body>

</html>

之后我使用 .html 擴展名保存了它,並嘗試在多個瀏覽器中打開這個文件。 但是,我沒有顯示正確的布局,而是再次在頁面上獲得了相同的代碼:請參見下圖。

Safari 不顯示 html 文件

結果在所有瀏覽器中以及刷新頁面后仍然存在。 雖然如果我先將文檔保存為 RTF 文件,然后手動將擴展名更改為 HTML,瀏覽器會顯示一些內容,但並不像預期的那樣和教科書中顯示的一樣。 在第二個結果下方。

Safari 顯示 html 文件不符合預期

預期結果來自教科書,並顯示在下一張圖片中。

教科書中的預期結果

知道為什么 Safari(或 Firefox、Opera、Chrome、DuckDuckGo 同樣)不能正確顯示文件嗎?

我的第一直覺是讓第 1 行讀取<!DOCTYPE HTML> ,看看這是否會讓您的網絡瀏覽器將代碼讀取為 HTML 而不是純文本。 不確定這是否可行,但我會嘗試。

您缺少一些屬性,應該包含這些屬性以使瀏覽器能夠正確解析文件。

以下是一個最小的片段,傳遞https://validator.w3.org/

<!doctype html>
<html lang=en>
    <head>
      <meta charset=utf-8>
      <title>Your Title</title>
    </head>
    <body>
      <p>Your Content</p>
    </body>
</html>

doctype是一個聲明,告知瀏覽器該文檔寫在html的哪個版本,默認html5

head 是元數據的容器

meta charset=utf-8 指定字符編碼

rest 是您可能熟悉的 html 標簽

問題一定出在 TextEdit 上,因為在我將相同的文本復制到 Brackets 后,它會立即運行並且符合預期。

ascii 編碼的文本文件與 TextEdit 文件不同。 TextEdit 將默認使用RTF ,它比原始文本更類似於 Word 文檔文檔類型格式。 當您保存文件時,TextEdit 實際上是將其保存到包含 HTML 文本的 RTF 文件中。

TextEdit可以編輯 HTML ,但在默認模式下,它會根據您在編輯器中格式化文本的方式為您編寫 HTML(您可能會聽到這稱為WYSIWYG

您可以更改 TextEdit 設置以在TextEdit -> Settings中將 HTML 文件編輯為文本,但我覺得您最好找到一個更合適的程序員編輯器來編輯文本。 在 macOS 上,您默認安裝了命令行程序: vimnano ,或者您可以安裝基於 GUI 的編輯器,例如Sublime Text

例如,您是否使用任何類型的 IDE(例如 VS Code)來編寫此 html?

我問是因為您還缺少其他 html 元素,瀏覽器 - 無論它是什么瀏覽器 - 都需要這些元素才能完全呈現頁面。

當您使用html 樣板時,這些詳細信息會自動填充到在瀏覽器中呈現 html 網頁所需的最小范圍內。 該鏈接將為您提供更多信息,說明為什么您需要樣板中的所有內容,但基本上它就像您的 html 頁面的預制模板,其中已經包含您在那里需要的所有基礎知識...只需開始添加內容,然后您去參加比賽吧。

在 VS Code 上,您可以通過鍵入添加樣板; (感嘆號)然后輸入,VS Code 將打開一個下拉菜單以自動完成此行作為 html5 的樣板,當您按回車鍵時。 使用該樣板填充頁面。

然后就可以簡單的把自己寫的內容復制進去,去掉重復的,就go就好了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM