iOS WebView 载入CSS的Background-image失败

发布于 2022-08-27 11:54:24 字数 2669 浏览 13 评论 0

Gist: https://gist.github.com/bolasblack/7260065

代码:

<style>
  html, body {
    margin: 0;
    padding: 0;
  }
  #qingchuang {
    margin: 0;
    padding: 0 15px;
    width: 270px;
    font: 15px/1.5 "Helvetica Neue", Helvetica, \5FAE\8F6F\96C5\9ED1, tahoma, arial, \5b8b\4f53, Verdana, Geneva, sans-serif, "Myriad Pro";
    text-align: left;
    background: #f7f6f2;
    color: #3a3a3a;
  }

  #qingchuang a {
    color: #0085c6;
    text-decoration: none;
  }

  #qingchuang ul {
    margin: 0;
    padding: 0;
  }

  #qingchuang li {
    list-style: none;
  }

  #qingchuang li.media {
    border-bottom: 1px solid #e2e2e2;
  }

  #qingchuang .media {
    overflow: hidden;
    zoom: 1;
    padding: 13px 0;
  }

  #qingchuang .media-object {
    margin-right: 13px;
  }

  #qingchuang .media-body {
    overflow: hidden;
    zoom: 1;
  }

  #qingchuang .media-body li {
    padding-left: 28px;
    margin-bottom: 5px;
  }

  #qingchuang .name,
  #qingchuang .tel,
  #qingchuang .mail {
    background-position: left center;
    background-repeat: no-repeat;
  }

  #qingchuang .name {
    background-image: url("http://images.appatom.com/b004809c83f734aa61a2f26ed5d661a4");
  }
  #qingchuang .tel {
    background-image: url("http://images.appatom.com/0e572a65e945a3131fa59993d0533422");
  }
  #qingchuang .mail {
    background-image: url("http://images.appatom.com/ef9b7a5d50e6a832363df22804d2221f");
  }

  #qingchuang .pull-left {
    float: left;
  }
</style>

<div id="qingchuang">
  <ul>

    <li class="media">
      <img src="http://images.appatom.com/d04748e7213aaebde9e7cde30c8b749c" class="media-object pull-left" width="75" height="75">
      <ul class="media-body">
        <li class="name">名称</li>
        <li class="tel">
          <a href="tel:11111111111">11111111111</a>
        </li>
        <li class="mail">
          <a href="mailto:example@example.com">example@example.com</a>
        </li>
      </ul>
    </li>

  </ul>
</div>

在程序里,这段 HTML 是以字符串形式获取到,然后写入 WebView 的:

NSString* htmlString = [NSString stringWithFormat:@"<!DOCTYPE html><html><body>%@</body></html>",content];
            NSLog(@"%@",htmlString);
            [_webView loadHTMLString:htmlString baseURL:nil];

content 就是上述的 html 。

当 WebView 载入完成后,发现 .name, .tel, .mail 三个类的背景图片都没有被加载

大家遇到过这样的问题吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

如日中天 2022-09-03 11:54:24

指出一下明显的问题:
你的style标签不在head里。根据W3C标准,这样的style定义是应该被直接忽略的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文