Investigate if NSAttributedString can be used instead of WKWebView
The html features of NSAttributedString are very limited. No tables, no badding. It makes no sense to use it to replace the Web views.
the page history needs to be handled manually. And no external links!
the page history needs to be handled manually.
The same should work with image references, too.
External css: You can keep the CSS in a separate file in your bundle for macOS at least, as I've just had this working for me in to an NSTextView. First you need to include the stylesheet link in your HTML document's HEAD as you would usually (e.g. <link href="Base.css" type="text/css" rel="stylesheet">). Then when you create your NSAttributedString you need to pass a base URL (e.g. by using htmlUrl.deletingLastPathComponent() in Swift). – Quintin Willison May 17 '18 at 12:32
Investigate if NSAttributedString can be used instead of WKWebView
Selectable links: https://stackoverflow.com/questions/21629784/how-can-i-make-a-clickable-link-in-an-nsattributedstring