我希望在屏幕上显示来自webservice并在webview上查看的图像。
我成功完成了视频,他们可以适应屏幕。
这是css代码;
<style type="text/css">
iframe {
display: block;
max-width:100%;
margin-top:10px;
margin-bottom:10px;
}
img {
display: block;
margin-top:10px;
margin-bottom:10px;
max-width:100%;
height:100%;
background-size: cover;
width: auto !important;
resize:both;
background:no-repeat fixed;
}
</style>
我在基于谷歌搜索的CSS代码上尝试了很多东西,但是我无法让它适合屏幕。
然后我将此CSS添加到webview内容。
String str = "<style type=\"text/css\">\n" +
" iframe {\n" +
" display: block;\n" +
" max-width:100%;\n" +
" margin-top:10px;\n" +
" margin-bottom:10px;\n" +
" }\n" +
"\n" +
" img {\n" +
" display: block;\n" +
" margin-top:10px;\n" +
" margin-bottom:10px;\n" +
" max-width:100%;\n" +
" height:100%;\n" +
" background-size: cover;\n" +
" width: auto !important;\n" +
" resize:both;\n" +
" background:no-repeat fixed;\n" +
" }\n" +
"\n" +
"</style>"+currentNews.getContent();
然后我加载视图;
content.loadDataWithBaseURL("file:///android_asset/", str, "text/html", "utf-8", null);
我只获得了非缩放形式或裁剪版本。提前谢谢。
答案 0 :(得分:0)
好的,我发现了问题所在。显然我的html数据在服务器端获得了另一种CSS样式。
为了能够强制它使用我的风格我已经使用!important
来获取我的css属性。当它完美地运作时,感觉非常好。
<style type="text/css">
iframe {
display: block;
max-width:100%;
margin-top:10px;
margin-bottom:10px;
}
img {
height: auto !important;
max-width: 100% !important;
}
</style>
然后我将该样式粘贴到str
的字符串变量中,并将其他html数据添加到str
字符串变量中。然后我加载如下的html。
content.loadDataWithBaseURL("file:///android_asset/", str, "text/html", "utf-8", null);
所以诀窍只是!important
!