首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >ios -无法从UIWebView获取以HTML呈现的css文件样式

ios -无法从UIWebView获取以HTML呈现的css文件样式
EN

Stack Overflow用户
提问于 2012-08-14 14:34:33
回答 1查看 2.3K关注 0票数 2

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

下面是我要做的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<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文件,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
body {background-color:#b0c4de;}
p {background-color:#e0ffff;}

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

下面是我首先调用HTML的方式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
- (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];
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-14 14:43:56

问题出在

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[theWebView loadHTMLString:htmlString baseURL:nil];

由于baseURL为空,web视图无法确定css文件的位置。将HTML文件的路径直接传递给UIWebView,而不是手动创建数据并加载它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NSString *htmlFile = [[NSBundle mainBundle] pathForResource:@"learn" ofType:@"html"];
NSURL *url = [NSURL fileURLWithPath:htmlFile];
NSURLRequest *rq = [NSURLRequest requestWithURL:url];
[webView loadRequest:rq];
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11954661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文