我需要在每個顯示器中準確放置25釐米寬(10英寸)的網站div。我如何做到這一點?以釐米(英寸)爲單位的Div寬度
回答
我該怎麼做?
你不行。
更新:顯然,你可以在許多現代系統上:查看@Tomas的答案。不過,它似乎並不總是完全可靠的。
舊的回答:你不能。顯示器顯示不同數量的像素。從顯示器到顯示器的像素大小差異很大。
如果您知道顯示器尺寸,有幾種方法可以內插像素尺寸。這些信息有時可用於操作系統;但是,網站不可能掌握這些信息。
唯一的出路就是讓用戶進行校準。例如,要求用戶將A4紙張放在顯示器上,並使用可拖動的標尺來確定它所覆蓋的區域。使用這些信息,您可以計算出需要顯示25釐米的像素數量。
更新: @Tomas聲稱在他的答案中使用CSS cm
值在屏幕上工作。在Chrome 7,IE6(!),IE7或更高版本中,播放TFT顯示器(1920x1080像素):21cm
可以完美轉換爲A4紙的短邊。 Firefox 3.6。
雖然這似乎並不完全可靠:@Yi Jiang無法使用Ubuntu Linux在TFT上工作;而且,較舊的顯示器可能無法發送其尺寸信息,會是不可能的操作系統,以確定正確的尺寸。
下面是用於測試的簡單JSFiddle。
無論如何,您無法從網站中獲取信息。在Windows程序中,它可能是poss ible(Windows 7似乎知道我的屏幕有多大)。 – 2010-10-26 11:40:17
@Pekka:是的,桌面應用程序可以獲取這些數據,因爲它可以直接與顯示器和圖形卡通信。但瀏覽器不能,這就是問題所在。 – Spudley 2010-10-26 11:44:59
@Spudley放鬆。我沒有批評克里斯的答案,只是添加了一個附註 – 2010-10-26 11:46:40
我相信,佈局引擎需要知道的三件事使這成爲可能:
- 屏幕分辨率
- DPI
- 物理顯示器尺寸
至於我知道,它不知道所有三個。
鑑於您在網站中聲明瞭<div>
,我們知道您處於網絡瀏覽器環境中。
不幸的是,網絡瀏覽器沒有辦法找到屏幕的DPI。你可以找出屏幕分辨率是什麼,所以你會知道用戶是否有1024x760或其他什麼,但你永遠不會知道這些1024x768像素是顯示在iPhone屏幕或廣告牌上,還是其他任何東西。
對不起。
你不能。程序只能通過詢問EDID獲得屏幕的真實物理尺寸,因爲Windows API返回的值不可靠。程序可以獲得分辨率(例如1280 x 1024)和屏幕dpi的真實值,但瀏覽器本身無法做到這一點。
屏幕的「物理dpi」和「屏幕dpi」之間經常混淆。通過將屏幕的最大像素寬度除以物理(標尺)寬度(以英寸爲單位),可以獲得物理dpi(更合適的稱爲每英寸像素數)。每英寸的像素數由製造過程確定。屏幕dpi是用戶可以通過控制面板設置的數字,它的唯一目的是將英寸中的值轉換爲多個像素。用戶可設置的屏幕dpi值與物理dpi(像素每英寸)無關,只是一個默認值爲96的數字。關於96或120,沒有什麼魔力。屏幕像素數量=英寸數×屏幕dpi
就這麼簡單。
23英寸顯示器1920×1080「21英寸」轉換爲21英寸寬度的原因是因爲23英寸對角線的屏幕寬度爲20.05英寸,1920英寸像素像素密度是每英寸95.76像素。
屏幕dpi的默認值爲96,那麼對於一英寸:像素= 1 x 96 = 96像素
23英寸屏幕的像素密度爲每英寸95.76像素,與指定長度時獲得的像素數相匹配,默認的屏幕dpi爲96.
如果在控制面板中更改了屏幕dpi,或者更改了顯示器視頻分辨率,則21釐米將不匹配A4紙張的寬度。
關於技術背景的很好的解釋!你是對的:它運行在Ubuntu Linux 10.04(英特爾顯卡)上,它只有一個1920x1200 24英寸外部顯示器,只是偶爾運行硬編碼的96 dpi。內部筆記本電腦顯示器的尺寸(高密度)是完全錯誤的 - 來自A4示例的矩形顯示太小。 – geekQ 2011-04-05 16:16:42
- 1. 我嘗試程序釐米英寸/英尺 - 英寸到釐米,米
- 2. 以釐米爲單位獲取圖像高度和寬度
- 3. 將釐米轉換爲英寸
- 4. 將英寸轉換爲釐米
- 5. 釐米到英尺和英寸轉換
- 6. 使用物理單位的Android Webview(釐米/英寸)
- 7. Crystal Reports自定義紙張尺寸寬度= 33釐米,高度= 21.5釐米
- 8. 高度轉換 - 釐米到英尺和英寸(反之亦然)
- 9. 以釐米爲單位將高度轉換爲英寸,但無法獲取小數點
- 10. 如何將報表設計器標尺單位從英寸更改爲釐米?
- 11. 什麼是標準pdf比例尺(毫米,釐米,英寸)?
- 12. 獲取釐米單位CSS
- 13. PHP釐米到英尺
- 14. 使用Visual Basic將釐米轉換爲英寸
- 15. 將英寸轉換爲釐米,反之亦然
- 16. 使用Jframe將英寸轉換爲釐米
- 17. wkhtmltopdf釐米/毫米的css尺寸
- 18. .NET單位類,英寸到毫米
- 19. 以釐米或毫米爲單位將CSS寬度映射到所需的像素分辨率?
- 20. 釐米轉換爲英尺和英寸,反之亦然不同的輸出?
- 21. 使用PHP將釐米轉換爲英尺和英寸使用PHP
- 22. 從C中的像素計算英寸和釐米#
- 23. 在matplotlib中指定以釐米爲單位的圖形大小
- 24. 如何以英寸爲單位設置圖像高度和寬度?
- 25. 獲取寬度(以像素爲單位)的高度尺寸(以%爲單位)
- 26. 如何檢索「單位制」公制(公斤,釐米)/英制(磅,英寸)的商店
- 27. 釐米至英寸轉換器,兩個文本框multply值
- 28. 寫3個函數將C和C中的英尺和英寸轉換爲米和釐米?
- 29. Android:以英寸爲單位設置視圖的寬度(在英寸和dp之間轉換)
- 30. 將釐米轉換爲公里,米和釐米
由於打印原因或在屏幕上? – 2010-10-26 11:37:18
請注意,25釐米<> 10英寸,而25.40更接近(1釐米= 0.3907008英寸) – 2010-10-26 12:20:31
我很好奇:你爲什麼要這麼做?例如,您是否在模仿真實生活物體的「實際尺寸」顯示? – 2010-10-26 12:31:54