教學 · Google 文件 → HTML

從 Google 文件裡弄出乾淨的 HTML

從文件裡複製幾段,貼到 CMS 裡,文字外面裹著 c1、c17 這樣的 class 名稱,而它們指向的樣式表你手上沒有。

那段標記裡有三處具體的毛病。知道是哪三處之後,貼一次就修好了。

去轉換器

複製內容,不是複製連結

這是最先把人繞住的一步:從文件選單裡「下載 → 網頁」,給你的是一個 zip,裡面是一份完整的 HTML 文件加一份內嵌樣式表 —— 整頁連樣式一起。

你要的是剪貼簿。在文件裡選取內容複製,剪貼簿上會放一份 RTF 格式的 HTML,那一份帶著結構而不帶樣式表。

  1. 01打開文件,選取你要的內容。要全部的話 Ctrl+A。
  2. 02用 Ctrl+C 複製 —— 不是「複製連結」,那個只給你一個指向文件的網址。
  3. 03貼到轉換器頁面的框裡,或者在那一頁任何地方按 Ctrl+V。不用登入,不涉及任何雲端硬碟權限;你的瀏覽器交出的只有剪貼簿,別的什麼都沒有。

毛病一:那堆 class

Google 的剪貼簿 HTML 幾乎給每個元素都掛了 class —— c0、c1、c17,清單項目上還有 lst-kix_ 開頭的。它們是按每份文件產生的,指向的 CSS 留在文件那邊。

所以它們不只是雜訊,而是死引用:在你的頁面上什麼都不做,會跟你自己的 class 名稱撞車,還讓這段標記在你要改的時候沒辦法讀。

清理是按樣式來的 —— c 加數字、lst-kix_ 開頭的任何東西、docs-internal-guid 的 id。你自己的 class 如果混在裡面,不動。

從文件貼過來
<p class="c3"><span class="c1">A sentence.</span></p>
清理之後
<p>A sentence.</p>

毛病二:不加粗的加粗外殼

文件會把複製的內容裹進一個 <b style="font-weight:normal">。這是個明確關掉了粗體的 <b> 標籤 —— 編輯器內部記錄格式的方式導致的怪東西。

把它貼到任何會剝掉 style 屬性的地方(大多數 CMS 都會),整塊就變粗了。這兒的做法是把這個標籤拆掉而不是留著,於是內容出來的嵌套層級就是它本來該有的那個。

同一遍還會刪掉 class 名稱清掉之後剩下的空 <span>。就是它們讓兩段文字貼出來有十二行。

毛病三:每個連結都是轉址

文件裡的連結出來指向的是 google.com/url?q=https://example.com/…,而不是目標網址。Google 拿它在編輯器裡統計點擊。

發到頁面上,意思就是你網站上每一條外連都繞一趟 Google、狀態列裡顯示的網址是錯的,而且那個轉址器哪天變了連結就全斷。

這層外殼會被拆回真正的目標網址,嵌套了幾層就拆幾層。追蹤參數也一起走 —— utm_source 那一家子、gclid、fbclid,還有另外幾個。

從文件貼過來
<a href="https://www.google.com/url?q=https://example.com/a%3Futm_source%3Ddoc">link</a>
清理之後
<a href="https://example.com/a">link</a>

剩下的,和還得你自己動手的

標題、段落、清單、表格、連結、粗體斜體 —— 換句話說,那份文件。程式、事件處理器、行內樣式都沒了,因為剪貼簿 HTML 可能來自網路上任何一頁,一律當不可信輸入處理。

有兩件事清理器留給你。Google 那些空佔位段落會以 <p></p> 的形式過來,不要的自己刪。還有文件裡的圖片存在 Google 伺服器上,網址是會過期的 —— 下載下來自己託管,不然過些日子它們會從你的頁面上消失。

選取、複製、貼上。剪貼簿在你的瀏覽器裡讀,什麼都不往外送。

Google 文件 → HTML