为什么我的HTML字符串在WebView iOS中没有显示正确的html标签?

时间:2019-10-21 06:08:19

标签: ios wkwebview

所以我有一个带有html标签的字符串:

> "<h3>Kebijakan Privasi</h3>\r\n<h4>Pengumpulan Informasi
> Pribadi</h4>\r\n<p>Di MLI, Kami memahami bahwa hal privasi adalah hal
> yang penting. Kebijakan Privasi ini berlaku untuk seluruh produk,
> layanan dan informasi yang ditawarkan di dalam Platform MLI.

这是我拥有的完整HTML string

如您所见,句子“ Kebijakan Privasi”具有

元素 和句子“ Pengumpulan Informasi Pribadi”具有

元素

所以我希望“ Kebijakan Privasi”(h3)的大小大于“” Pengumpulan Informasi Pribadi“(h4)

但是这是我运行应用程序时的结果:

enter image description here

如您所见,“ Kebijakan Privasi”似乎比“ Pengumpulan Informasi Pribadi”小,我希望反过来。

我拥有的HTML字符串没有样板HTML标记,

  

<! DOCTYPE HTML>,和

就像我在顶部共享的字符串一样。有效果吗?因为如果我看到here的视频教程,似乎需要样板HTML标记

这是我使用的简化代码,我正在使用 WKWebView 类:

class PageContentVC: UIViewController {

    @IBOutlet weak var webView: WKWebView!
    var contentStringHTML = "some string with html tag in here"



    override func viewDidLoad() {
        super.viewDidLoad()

        webView.navigationDelegate = self
        webView.loadHTMLString(contentStringHTML, baseURL: nil)                
    }        
}

extension PageContentVC : WKNavigationDelegate {

    func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
        activityIndicator.stopAnimating()
        webView.isHidden = false
    }

    func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
        activityIndicator.stopAnimating()
    }

}

那该如何解决呢?也许您对我来说有更好的解决方案。

1 个答案:

答案 0 :(得分:0)

我终于找到答案了。我不是网络开发人员,因此似乎您还必须像这样将css脚本添加到html字符串中

module CurrentCart
  private
  def set_cart
    if session[:cart_id] && Cart.exists?(session[:card_id]
      @cart = Cart.find(session[:cart_id])
    else
      @cart = Cart.create
      session[:cart_id] = @cart.id
    end
  end
end

,然后将其加载到WKWebView:

var someHTMLString = """

<!DOCTYPE html>
<html lang="en">

<head>
<title>Content Page</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=0.75">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
</head>

<body>
\(yourcontentHTMLStringHere)
</body>

</html>

"""