我正在使用 jQueryMobile 和 PhoneGap 开发一个跨平台的移动应用程序。我瞄准的第一个平台是安卓。
对于 Android 应用,建议开发者使用 dp 作为字体大小的单位。DP 代表与密度无关的像素。使用它意味着您的字体在屏幕上具有相同的物理尺寸(以英寸、厘米或其他为单位),无论屏幕密度如何。
那太棒了。现在我想知道:如果我按照 Android 的要求在 dp 中指定所有内容,其他浏览器平台会支持这个单元吗?我假设不是。
这让我想知道将字体设置为物理绝对大小的旧方法(或解决方法)有什么问题:
1. PT:一个 pt 是 1/72 英寸。
所以这是一个物理上的绝对大小,对吧?这听起来好得令人难以置信。如果这是可靠的并且在所有浏览器和设备上都受支持,为什么还要这样做呢?
2. EM:一个 em 定义为文档的字体大小。
所以对于 PT,大小从一开始就是绝对的。使用 em 作为字体大小单位,我只需要设置文档的字体大小,使其适合屏幕(我可以使用 Javascript)。如果在 em 中指定了所有其他内容,我就完成了。正确的?
3. jQueryMobile* 同时,我使用 CSS 媒体查询来检测屏幕宽度和高度和密度,并使用它们为元素设置基本字体大小。之后,所有字体尺寸都以 em 为单位。很多帖子建议 em 应该只用于字体,但是如果你的应用程序/网站都是关于文本的,那么所有包含文本的元素都设置 em 中的尺寸是否有意义?
4. 或者...
“桌面”浏览器和 iOS 是否也支持 dp?编辑:不,不是。
感谢您的智慧。