【问题标题】:How to apply CSS into WebView for remote html(url)?如何将 CSS 应用于远程 html(url) 的 WebView?
【发布时间】:2013-07-02 15:51:23
【问题描述】:
例如,我有一个网页
“example.google.com/login?”
我已使用 WebView.loadUrl() 方法将此 url 加载到 WebView 中。我有这个网页的 css 并将其保存在 assets 文件夹下。现在我想为这个远程 html 应用自定义 css。我该如何实现?
我使用了 loadDataWithBaseurl() 但没有帮助。我该如何解决这个问题?
css是不是只申请了assets文件夹下的本地html文件?
【问题讨论】:
标签:
android
webview
android-assets
【解决方案1】:
这里有同样的问题,但解决了这个问题!
1.) 使用 JSOUP 删除原始 CSS。
2.) 通过您自己的网络服务器提供您定制的 CSS
3.) 使用 JSOUP 添加 CSS 条目
使用您自己托管的 CSS 在 WebView 中加载 HTML。
doc = Jsoup.connect(MyTaskParams.base_URL+MyTaskParams.sub_URL).get();
doc.head().getElementsByTag("link").remove();
doc.head().appendElement("link").attr("rel", "stylesheet").attr("type", "text/css").attr("href", "http://www.unden.at/zzzz/at.unden.android.screen.css");
Visits to my Homepage are Welcome
【解决方案2】:
WebView.loadUrl() 应该让您了解方法调用中发生的情况。
您可以加载一个页面,该页面包含从页面本身或其中作为某些内联或页面样式引用的所有样式代码。
您无法从资源文件夹中为远程 URL 加载不同的样式表,因为它们以只读输入流的形式出现,因此您无能为力。