裝置資訊

檢視瀏覽器對外匯報的裝置資訊:螢幕解析度、視口尺寸、畫素比、CPU 核心數、時區、語言與 User Agent。全部在本地讀取,不上傳。

把瀏覽器願意告訴網站的裝置資訊,集中成一份可讀的清單。 調整視窗大小或網路狀態變化時數值會自動重新整理。點選複製按鈕可將完整報告貼上到缺陷單裡。

顯示器

螢幕解析度
可用螢幕區域
顏色深度
裝置畫素比
螢幕方向

瀏覽器視窗

視口尺寸
視窗尺寸
捲軸寬度

瀏覽器與 User Agent

User Agent
首選語言
可接受語言
平臺
瀏覽器廠商
是否啟用 Cookie
網路是否可達
Do Not Track

硬體

邏輯 CPU 核心數
裝置記憶體
最大觸點數

時間與區域

時區
UTC 偏移
當前時間(ISO)

正確解讀裝置資訊

螢幕尺寸不等於視窗尺寸

三種尺寸經常被混淆,一旦搞錯就會寫出只在別人機器上出問題的佈局。螢幕解析度描述的是物理面板,無論你怎麼縮放視窗都不會變;可用螢幕區域會減去被系統長期佔用的部分,例如工作列或 macOS 選單欄;視口才是頁面真正能繪製的區域,也是三者中唯一被 CSS 媒體查詢採納的值。

除錯響應式佈局時,你要的幾乎總是視口尺寸。使用者的顯示器可能有 3840 畫素寬,但他也許只開了一個 700 畫素寬的視窗。如果媒體查詢按螢幕寬度寫,就會在放不下的空間裡輸出桌面版佈局。

裝置畫素比把兩者聯絡起來。畫素比為 2 表示每個 CSS 畫素由 2×2 個物理畫素繪製,這正是老顯示器上清晰的圖片在新筆記本上發虛的原因。用視口尺寸乘以畫素比,才是點陣圖真正需要的畫素數。

User Agent 會撒謊,而且是故意的

User Agent 是本頁最不可信的欄位。幾十年來各家瀏覽器都在自己的標識裡塞進別家的名字,只為繞過寫得很糟的服務端判斷,所以今天的 Chrome 仍然會同時聲稱自己是 Mozilla、AppleWebKit、KHTML、Gecko 和 Safari。為了抑制指紋追蹤,瀏覽器廠商正在凍結並精簡這個字串。

請把它當作提示,而不是判斷依據。要確認某個能力是否存在,就直接檢測該能力:一行程式碼即可,能在你寫程式碼時還不存在的瀏覽器上正常工作,也不會因為廠商改寫 User Agent 而失效。

這些數值暴露了什麼

單看任何一項都無法定位到具體的人,但組合起來的區分度高得驚人。螢幕解析度、時區、語言列表、CPU 核心數與畫素比拼在一起,往往能在數百萬訪客中唯一確定一個人——追蹤指令碼收集它們正是這個原因。

這也是部分欄位被刻意模糊或直接隱藏的原因。裝置記憶體會向下取整到很粗的檔位,有些瀏覽器會限制核心數上報、完全不暴露記憶體,或者返回通用的平臺字串。Do Not Track 實際上已被放棄:幾乎沒有站點遵守,多數瀏覽器也不再發送,所以這裡為空並不能說明任何問題。

對開發的現實建議是:只採集你真正需要的最少資訊。如果你想決定要不要載入重量級動畫,就去測量首幀的實際渲染耗時,而不是靠核心數猜測。真實測量勝過推斷硬體規格,而且不會增加指紋面積。

完全基於標準瀏覽器 API 自研實現。不上傳任何資料:所有數值都在你的瀏覽器本地讀取,不會離開此頁面。

常見問題

為什麼顯示的解析度比顯示器標稱的小?
你看到的是 CSS 畫素而非物理畫素。把顯示的解析度乘以裝置畫素比才是面板真實畫素數。畫素比為 2 的 4K 屏通常報告 1920 × 1080。
為什麼視口尺寸會變,螢幕解析度卻不變?
螢幕解析度描述物理顯示器,只有切換顯示模式時才會變化;視口是瀏覽器視窗內可繪製的區域,縮放視窗、開啟開發者工具或顯示書籤欄都會改變它。
能用 User Agent 判斷瀏覽器嗎?
不建議。各瀏覽器在該字串中刻意互相模仿,廠商也在主動削減其細節。請直接檢測你需要的具體能力,而不是匹配瀏覽器名稱。
為什麼裝置記憶體是一個取整後的數字?
瀏覽器會刻意向下取整到很少的幾個檔位,很多瀏覽器乾脆不上報。暴露精確記憶體會讓瀏覽器指紋識別變得容易得多。
頁面上的內容會被髮送到伺服器嗎?
不會。所有數值都通過標準 API 在你自己的瀏覽器中讀取並在本地渲染,不做任何傳輸、記錄或儲存。
為什麼 Do Not Track 是空的或不可用?
該訊號從未被廣泛遵守,多數瀏覽器已將其移除。這裡為空只說明瀏覽器沒有傳送該請求頭,並不代表追蹤偏好未知。