0

我正在开发一个Phonegap应用程序,并且在我的Android设备上作为编译的Phonegap应用程序与桌面上的Chrome,我的Android设备上的字形字体的CSS行高和边距呈现不同的问题。

有没有办法专门为 Android 的渲染引擎指定 CSS 样式,类似于您在 CSS 中常见的跨浏览器功能(例如 -webkit、-moz 等)?

我使用的字体是http://www.entypo.com/,我遇到的 CSS 样式特别是行高和边距。我在整个应用程序中的常规字体没有遇到任何这样的问题。

4

2 回答 2

1

如果您可以检测到您所服务的设备/环境,那么专门针对该设备上的定位元素就像将类附加到<html>页面标签一样简单。然后只需从该根类调用您的样式声明。例如:

.wrapper {
    background: blue; /* will apply to all documents independent of device */
}

.android .wrapper {
    background: green; /* will only apply to documents with the .android base class */
}

至于检测设备,这是一个完全不同的问题,但假设您可以检测到设备,此方法将起作用。

于 2013-08-22T00:59:40.993 回答
0

在您的 Android 代码中,您可以添加到您的onCreate()之后loadUrl()

this.sendJavascript("document.getElementsByTagName('body')[0].className = 'android'");

这将为您添加一个“android”类,<body>并让您为您的应用程序的 Android 版本使用特定的 CSS 选择器。如果您已经将课程应用于您的<body>,您可以这样做

this.sendJavascript("document.getElementsByTagName('body')[0].className += ' android'");
于 2013-08-22T01:05:37.533 回答