HTML
預覽
按下「檢查」即可檢視元素數量、標題大綱以及標記中的問題清單。
問題
標題大綱
最常用的標籤
允許執行指令碼時,預覽的控制台輸出會顯示於此。
按下「檢查」即可檢視元素數量、標題大綱以及標記中的問題清單。
允許執行指令碼時,預覽的控制台輸出會顯示於此。
一份郵件範本、工單裡的一段程式碼、一份匯出的報表:有時你只是想看看一段 HTML 渲染出來是什麼樣子。貼上之後,它會在你輸入時即時渲染,執行在一個受限的框架裡,寬度由你選擇。在預覽旁邊,你還可以整理程式碼、壓縮程式碼、搭配主控台執行其中的指令碼,並查看標記中真正存在的問題清單。
貼上的 HTML 可能包含並非你撰寫的指令碼、表單和連結。預覽執行在帶有 sandbox 屬性的 iframe 中,擁有獨立的不透明來源(opaque origin),因此其中任何內容都無法讀取本站的 Cookie 或你的工作階段,無法以你的名義送出資料,也無法讓目前的頁面跳轉。在你開啟之前,指令碼始終保持關閉。
它用標準的 HTML 剖析器讀取標記,只回報實際看到的問題:開啟後從未關閉的標籤、沒有對應開始標籤的結束標籤、缺少 alt 文字的圖片、重複的 id、未加 rel="noopener" 就在新分頁開啟的連結、跳級的標題層級、透過 http:// 載入的資源;對於完整頁面,還會檢查是否缺少 doctype、title、lang 或 viewport 標籤。
它回報錯誤,而不是風格。HTML 標準允許省略的結束標籤,例如 </p>、</li>、</td>、</tr> 和 </option>,永遠不會被列為未關閉;<br>、<img> 和 <input> 等空元素本來就不需要結束標籤。空的 alt="" 算作有替代文字,這對裝飾性圖片是正確的。帶 target="_blank" 的連結只要有 rel="noopener" 或 rel="noreferrer" 就能通過。<a href> 中一般的 http:// 連結不算不安全;只有會被載入的資源才算,例如圖片、指令碼、樣式表和 iframe。標題層級往回升(從 h4 到 h2)沒有問題;只有向下跳過一級(從 h2 到 h4)才會回報。doctype、title、lang 和 viewport 檢查只在貼上的是完整頁面時執行,也就是包含 doctype 或 html、head、body 標籤,因此電子郵件片段或 CMS 程式碼片段不會因此被扣分。
先用手機寬度(375 px)預覽,因為很多人在手機上開信,再看平板(768 px)和桌面(1280 px)。保持指令碼關閉:郵件程式不執行 JavaScript,所以不執行指令碼的預覽更接近讀者看到的樣子。圖片請用以 https:// 開頭的絕對網址,因為預覽和收件人的郵件程式都看不到你電腦上的檔案。壓縮會刪除一般註解,但保留以 <!--[if 開頭的條件式註解,例如 <!--[if mso]> ... <![endif]-->。它不會保留 <!--[if !mso]><!--> 寫法中的結束標記 <!--<![endif]-->,所以使用這種寫法的範本不要壓縮,否則 Outlook 可能隱藏其後的所有內容。預覽是瀏覽器的呈現結果;Windows 版傳統 Outlook 以 Word 引擎繪製郵件,大量寄送前請先寄一封測試信到那裡確認。
預覽、美化和壓縮都在你的瀏覽器中完成。只有檢查報告會把標記傳送到伺服器,在伺服器上剖析後於同一次回應中傳回:不會寫入磁碟,也不會記錄日誌,使用統計只保存數量。
貼上的程式碼不可信,所以指令碼預設關閉。勾選「執行指令碼」後,預覽會在啟用 JavaScript 的狀態下重新載入,仍然位於沙盒內,主控台輸出會顯示在預覽下方。
預覽是根據貼上的文字產生的,而不是從你的電腦或伺服器載入,因此像 images/logo.png 這樣的相對路徑會在本站上尋找,結果找不到。請使用絕對 URL,或加入一個指向檔案實際位置的 <base href="..."> 標籤。
它只會重新調整標籤之間的縮排,不會更動 pre、textarea、script 和 style 中的內容。行內元素之間的空白偶爾可能略有變化,所以格式化之後請再看一下預覽。
檢查報告最多接受 1,000,000 個字元,最多列出 200 個問題。為了讓輸入保持流暢,即時預覽在超過 200,000 個字元後會暫停;按下「重新整理」或 Ctrl+Enter 即可更新。
可以。貼上郵件的 HTML 或開啟 .html 檔案,把寬度切換到"手機"(375 px)和"桌面"(1280 px)查看兩種版面,再按"檢查"找出沒有 alt 文字的圖片和透過未加密 http:// 載入的資源。預覽使用你瀏覽器的轉譯引擎,而每個郵件用戶端都有自己的引擎,很多還會捨棄部分 CSS,所以它大致呈現瀏覽器中網頁郵件的效果,並不完全等於每個收件匣的顯示。郵件用戶端不會執行 JavaScript,請保持"執行指令碼"關閉。正式寄出前,先寄一封測試郵件到讀者常用的用戶端。
比直接開啟更安全。開啟檔案會把它載入你瀏覽器中的編輯器,除非你點選檢查,否則不會傳送任何內容到伺服器。預覽在隔離的沙箱框架中執行,指令碼和表單送出都是關閉的,所以頁面無法執行程式碼、送出表單或存取本站的 Cookie。帶完整 http(s) 網址的圖片和樣式表仍會載入,因此寄件者可能得知檔案已被開啟。先閱讀原始碼,保持執行指令碼關閉,絕不要在別人寄來的頁面裡輸入密碼。
開啟檔案一律以 UTF-8 讀取檔案,並忽略其中的 <meta charset> 標籤。以 Big5 儲存的網頁(舊版 Windows 編輯器和匯出檔中很常見)會用不是有效 UTF-8 的位元組儲存中文字,所以每個字都顯示為替代字元 �。請在編輯器中開啟檔案,重新另存為 UTF-8(記事本:另存新檔,編碼選 UTF-8;VS Code:點選狀態列中的編碼,再選 Save with Encoding),然後在這裡重新開啟。也可以先用瀏覽器開啟檔案,檢視原始碼後貼到這裡,因為瀏覽器已依網頁本身的 charset 解碼過了。
沙箱一律不允許送出表單或彈出視窗,即使開啟了執行指令碼也一樣,所以按下送出不會傳送任何內容,帶有 target="_blank" 的連結和 window.open() 呼叫都會被封鎖。這樣貼上的網頁就無法傳送資料或開啟其他網站。一般連結會在預覽框內開啟,而拒絕被嵌入框架的網站會顯示為空白或遭拒。要檢查表單,請在原始碼中查看它的 action、method 和欄位;檢查也會列出每個缺少 rel="noopener" 的 target="_blank" 連結。實際的送出請在你自己的開發伺服器上測試。