Android WebView无法正确显示表格

时间:2014-10-22 22:52:03

标签: android html webview

我所拥有的是一个简单的WebView应用程序来显示网站。问题是当我在API 16上运行应用程序时,WebView无法始终正确显示表格。如果我重新启动应用程序几次,它最终将加载正常。看似随意,但它会做一些疯狂的事情。我还在API 19,20和21上运行了这个应用程序而没有遇到这个问题。

加载时很好:

enter image description here

当它没有

enter image description here

以下是我从项目中获得的代码片段。我还应该注意,我有清单中的互联网权限和在loadUrl之前启用javascript的基础知识。

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/activity_main_webview"
android:layout_width="match_parent"
android:layout_height="match_parent">
</WebView>

MainActivity.java

public class MainActivity extends Activity {

private WebView mWebView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mWebView = (WebView) findViewById(R.id.activity_main_webview);

    // Enable Javascript
    WebSettings webSettings = mWebView.getSettings();
    webSettings.setJavaScriptEnabled(true);

    webSettings.setDomStorageEnabled(true);
    mWebView.loadUrl("http://www.mywebsite.com/page.html");

}

在WebView中加载HTML

<div style="z-index: 5001; position: fixed; width: 100%; top: 0px; background-color: white;">
<table style="width: 100%; text-align: center;">
<tbody>
<tr>
<td style="border: 1px solid silver;" id="menu1-t" ><img style="width: 100%; max-width: 60px;" src="images/image.png" ></td>
<td style="border: 1px solid silver;" id="menu2-t" ><img style="width: 100%; max-width: 60px;" src="images/image.png" ></td>
<td style="border: 1px solid silver;" id="menu3-t" ><img style="width: 100%; max-width: 60px;" src="images/image.png" ></td>
<td style="border: 1px solid silver;" id="menu4-t" ><img style="width: 100%; max-width: 60px;" src="images/image.png" ></td>
<td style="border: 1px solid silver;" id="menu5-t" ><img style="width: 100%; max-width: 60px;" src="images/image.png" ></td>
<td style="border: 1px solid silver;" id="menu6-t" ><img style="width: 100%; max-width: 60px;" src="images/image.png" ></td>
</tr>
</tbody>
</table>
</div>

如果有人之前已经看过这个或有任何想法,那么将非常感谢帮助。

1 个答案:

答案 0 :(得分:1)

似乎只是在我的表格中添加table-layout: fixedbox-sizing: border-box就解决了这个问题。