[iOS] UIWebview读取本地HTML CSS不显示的问题

看到这篇文章的人, 我想你们一定跟我遇到了一样的问题, 并且很着急, 所以这里先给出解决方案

解决方案:如果你的css是放在文件夹里的 请把这个文件夹以folder的形式(在xcode工程目录是蓝色文件夹)引入到xcode 这样应该可以解决你可问题, 如果不能解决请往下看

 

引起原因 : 读取本地css显示失败的原因大多是因为把html工程引入xcode功能目录中由于xcode默认文件夹是group造成html寻找css文件找不到, 因此无法读取到css(外链式CSS)

出现这个问题的原因与一句话有关:

<link href="css/index.css" rel="stylesheet" type="text/css">

这句代码的意思是寻找与 index.html 同目录下css文件夹中的 index.css 文件, 这时你恰好是以group形式引入css文件夹 index.html就会去与他同一目录下的css文件夹中去寻找 index.css, 但是它根本找不到, 找不到的原因是group里的所有文件都视为同一目录, 装着 index.css 的文件夹 css 被干掉了, 里面的东西都在group里, 所以就会出现html无法找到css的问题了, 这时修改index.html中的代码为下面这句话 html就可以轻松的找到css了:

<link href="index.css" rel="stylesheet" type="text/css">

可以观察到href里面去掉文件夹路径(css), 因为文件都在group里, 不需要css文件夹来指引了, 因此这么做css就能轻松的显示出来了

不过如果项目中引入了很多css肯定不能一个一个去改, 所以最好的解决方案是把css文件夹以folder的形式引入到xcode项目中 因为folder与group不同, 它是有目录结构的, 所以我们这样做 先把group状态的css文件夹remove to references 然后再拖回到工程目录 这时会出来对话框 然后请选择create folder references

这样再运行项目就会发现你的css可以顺利的显示出来了!

demo源码:

https://github.com/iwgo/UIWebView-html-css.git

posted @ 2016-05-03 15:54  iwgo  阅读(1227)  评论(1编辑  收藏  举报