Я искал и нашел много сообщений, где я получаю решение для загрузки файла CSS из пакета или из строки. Но мой CSS-файл сохранен на нашем сервере.
Я хочу загрузить CSS из URL. Я пробовал много способов, но у меня это не сработало.
Хотя я могу вставить CSS из того же URL-адреса в UIWebView в коде Objective C, но я столкнулся с проблемой при попытке добиться того же в WKWebView в SWIFT. Я думаю, что я делаю некоторую синтаксическую ошибку при написании тега HTML. Пожалуйста, помогите мне
Вот код Objective C:
NSString *html = [NSString stringWithFormat:@"<link type=\"text/css\" href=\"%@\" rel=\"stylesheet\" /> %@<br>", htmlData.cssStr,[htmlData.contentsArr objectAtIndex:slideNo]];
NSLog(@"html .%@", html);
[webview loadHTMLString:html baseURL:nil];
htmlData.cssStr: это веб-ссылка
Как и в большинстве решений, CSS вставляется в SWIFT в func webView (_ webView: WKWebView, навигация didFinish: WKNavigation!). Поэтому я также вызываю insertContentsOfCSSFile из didFinish из WKWebView.
Как я пробовал в SWIFT это:
func insertContentsOfCSSFile(into webView: WKWebView) {
let cssString = try! String(contentsOf: URL(string: self.htmlData.cssStr)!).trimmingCharacters(in: .whitespacesAndNewlines)
print("cssString", cssString)
let jsString = "var style = document.createElement('style'); style.innerHTML = '\(cssString)'; document.head.appendChild(style);"
webView.evaluateJavaScript(jsString, completionHandler: nil)
}