gpt4 book ai didi

ios - 无法从 UIWebView 获取要在 HTML 中呈现的 css 文件样式

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:04:08 25 4
gpt4 key购买 nike

如果我创建内联样式,它们会呈现,但当尝试在 xCode 中引用同一组和目录中的 css 文件时,它们不会呈现。

这是我的做法:

<html>
<head>
<link href="main.css" rel="stylesheet" type="text/css" />
</head>

<body>

<h1>Hello, world! Learn</h1>

<p>
<a href="myscheme://advertising" class="buttonStyle">Click me!</a>
</p>
</body>
</html>

然后我有一个名为 main.css 的 css 文件,如下所示:

body {background-color:#b0c4de;}
p {background-color:#e0ffff;}

有人知道为什么这不会呈现 css 吗?我是否遗漏了 HTML header 中的重要内容?

这是我首先调用 HTML 的方式:

- (void)viewDidAppear:(BOOL)animated
{
NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"learn"
ofType:@"html"];

NSString* htmlString = [NSString stringWithContentsOfFile:htmlFile encoding:NSUTF8StringEncoding error:nil];
[theWebView loadHTMLString:htmlString baseURL:nil];

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:htmlFile]];

[theWebView loadRequest:request];
}

最佳答案

问题出在

[theWebView loadHTMLString:htmlString baseURL:nil];

由于 baseURL 为 nil,Web View 无法确定您的 css 文件的位置。与其手动创建数据并加载它,不如将 HTML 文件的路径直接传递给 UIWebView:

NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"learn" ofType:@"html"];
NSURL *url = [NSURL fileURLWithPath:htmlFile];
NSURLRequest *rq = [NSURLRequest requestWithURL:url];
[webView loadRequest:rq];

关于ios - 无法从 UIWebView 获取要在 HTML 中呈现的 css 文件样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11954661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com