從JS/CSS 偵測系統DPI/PPI
背景
在具有不同DPI/PPI 設定的裝置之間保持一致的使用者體驗至關重要適用於生成高解析度影像的現代應用程式。然而,準確檢測設備的 DPI/PPI 存在挑戰,因為傳統方法可能無法提供可靠的結果。
裝置說謊:錯誤的 96ppi 讀數
您使用具有固定「的元素的初始方法CSS 中的 1in" 寬度並檢查其 offsetWidth 似乎是合理的。然而,眾所周知,iPhone 會誤報其 PPI,給出 96ppi 的誤差值。這種錯誤的讀數使該方法不可靠。
替代方法:裝置顯示尺寸
另一個潛在的解決方案是擷取裝置顯示尺寸(以英吋為單位)並將其除以寬度(以像素為單位)。然而,在 JS/CSS 中存取這些尺寸並不簡單。
解決方案:DevicePixelRatio
解決方案:DevicePixelRatio
- 幸運的是,有一個可靠的方法來獲取設備DPI/PPI:
- 使用window.devicePixelatio:
- 此屬性提供裝置螢幕上的像素與CSS 像素的比率。 建立測試元素:
- 使用下列指令建立不可見元素CSS 中的高度和寬度均為 1 英吋。 擷取顯示解析度:
<code class="javascript">const testDiv = document.createElement('div'); testDiv.style.height = '1in'; testDiv.style.left = '-100%'; testDiv.style.position = 'absolute'; testDiv.style.top = '-100%'; testDiv.style.width = '1in'; document.body.appendChild(testDiv); const DPI_X = testDiv.offsetWidth * window.devicePixelRatio; const DPI_Y = testDiv.offsetHeight * window.devicePixelRatio; console.log(DPI_X, DPI_Y);</code>此方法可在各種設備上提供準確的 DPI/PPI 讀數,包括那些使用傳統方法可能誤報 PPI 的設備。
以上是面對設備欺騙,如何從JS/CSS準確檢測DPI/PPI?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

@keyframesispopularduetoitsversatoryand and powerincreatingsmoothcsssanimations.keytricksinclude:1)definingsmoothtransitionsbetnestates,2)使用AnimatingMultatingMultationMultationProperPertiessimultane,3)使用使用4)使用BombingeNtibalibility,4)使用CombanningWiThjavoFofofofoftofofo

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他們可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑戰挑戰InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)創造性

使用滾動陰影,尤其是對於移動設備,是克里斯以前涵蓋的一個微妙的UX。傑夫(Geoff)涵蓋了一種使用動畫限制屬性的新方法。這是另一種方式。

文章討論了CSS FlexBox,這是一種佈局方法,用於有效地對齊和分佈響應設計中的空間。它說明了FlexBox用法,將其與CSS網格進行了比較,並詳細瀏覽了瀏覽器支持。

本文討論了使用CSS創建響應網站的技術,包括視口元標籤,靈活的網格,流體媒體,媒體查詢和相對單元。它還涵蓋了使用CSS網格和Flexbox一起使用,並推薦CSS框架


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

禪工作室 13.0.1
強大的PHP整合開發環境

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

記事本++7.3.1
好用且免費的程式碼編輯器

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器