2012-05-30 57 views
0

我做了一個移動web應用程序,在任何方向的所有不同的智能手機(iphone,windows,黑莓和android)中看起來都不錯,除了帶有物理鍵盤的小屏幕的黑莓手機外。在這個特定的黑莓手機上,字體太小。什麼是一種好方法,在這些類型的黑莓上應用不同的風格或使字體更大?如何增加帶物理鍵盤的小屏幕黑莓手機的字體大小?

注意我的應用程序在黑莓手機上看起來很棒,它具有全屏幕虛擬鍵盤。它在肖像和風景中看起來很棒。因此,我使用任何解決方案來針對具有小屏幕+物理鍵盤的黑莓手機,不得干擾整個屏幕的黑莓的操作/化妝品。

+0

它是一個專用黑莓應用程序(Java)或Web應用程序(Javascript)? –

+0

它是一個在html 5和css 3中完成的移動網站。 – John

+0

因此,您無法檢測到哪個設備運行該應用程序。你可以檢測到它是黑莓還是不是,但就是這樣。一切都基於User-Agent HTTP標頭,該標頭不包含這種「設備模型」信息。 –

回答

1

解決問題的最佳方法是確定何時需要使用較大的字體,然後測試該特定條件的物理標準。如果您不嘗試檢測託管頁面的設備類型,但檢測到設備的某些特性,則最好。

例如,您可以決定如果屏幕尺寸小於x b,則需要更改字體大小。要做這樣的事情,你可以使用完全CSS的媒體查詢,當特定的屏幕尺寸條件成立時,可以設置不同的字體大小。

我懷疑問題不是設備有鍵盤,而是有物理鍵盤的屏幕大小的限制。所以,你不應該關注它是什麼類型的設備,或者它是否有鍵盤,而是關注屏幕尺寸是什麼,導致你需要不同的設計。然後,鍵入您的CSS/HTML甚至JavaScript來檢測該屏幕大小並相應地進行調整。

如果您決定CSS媒體查詢可能是一種有用的方法,您必須確保您最想要此修復的目標設備支持您選擇使用的特定CSS媒體查詢。

下面是一些例子CSS媒體查詢是如何工作的:

http://css-tricks.com/css-media-queries/

這裏還有一個SO張貼關於黑莓的顯示優化和測試會談:

Blackberry media query

+0

這可能聽起來很愚蠢......但也許你可以幫助我理解。黑莓9800和9700的屏幕分辨率爲480x360。但9800是全屏幕,而9700是帶物理鍵盤的小屏幕。那麼這是否意味着只檢測屏幕結果並不能解決我的問題? (另外,我對屏幕資源的理解可能是錯誤的,也許還有另一個我應該看的屬性?) – John

+0

@John - 這就是爲什麼我說你必須弄清楚哪些設備的特性實際上可以區分你需要識別和做不同的事情。如果這兩個屏幕的像素數相同,並且您只想在其中一個屏幕上執行不同的操作,那麼顯然您不能只使用像素數。也許你會想要使用'resolution'參數,並在想要使用更大字體的位置檢測更高分辨率的屏幕。或者你也許只想在pt中指定你的字體而不是px,這樣你的字體就不太依賴於屏幕的分辨率。 – jfriend00

相關問題