对于cordova android应用程序,我创建了一个用于1080 x 1920屏幕分辨率和使用媒体查询访问的css
@media screen and (max-width: 680px) and (orientation:portrait) //Galaxy S5 compatible
或
@media screen and (device-height : 1920px) and (device-width : 1080px) and (orientation:portrait) // Galaxy S4 compatible
CSS在S4设备上工作正常,但在具有与S4相同的屏幕分辨率的S5设备上似乎被放大和破坏。
元数据定义为<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height" />
请建议我需要做些哪些更改才能解决此问题,并为Galaxy S4和S5设备使用相同的CSS
答案 0 :(得分:0)
<强>更新强>
尝试使用@media screen
和min/max-device-width
。
例如:
/* Android Tablet (landscape) style */
@media only screen and (min-device-width : 800px) and (max-device-width : 1280px) and (orientation : landscape) {
}
设备宽度:是屏幕或整个页面,而不仅仅是渲染区域作为文档窗口。
[第一个回答]
我也遇到过这个问题。试试这个:
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=medium-dpi" />
target-densitydpi=medium-dpi
似乎解决了这个问题。让我知道。
对于媒体查询:在max-width之后使用max-device-width。 参见:
答案 1 :(得分:0)
问题在于Android OS 4.4 Webkit的扩展。我通过
调整App的初始缩放来找到分辨率 Display display = ((WindowManager) getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay();
int width = display.getWidth();
int height = display.getHeight();
// calculate target scale (only dealing with portrait orientation)
double globalScale = Math.ceil( ( width / ORIG_APP_W ) * 100 );
// set the scale
this.appView.setInitialScale( (int)globalScale );
解释如下: Scaling fixes for Android devices in Phonegap
感谢您的支持