如何使 WebKit WebView 使用 CSS 样式表?

2024-01-12

我制作了一个带有 CSS 文件链接的 html,在浏览器中打开它,样式显示正确。
然后我将其加载到 WebView 中,但样式不显示。
我什至尝试插入一个<link>从 Objective-C 到 DOM,这是我的最终目标,但都没有成功。
我是否必须以某种方式在 webView 上启用 CSS?

edit:
CSS 包含在 html 中:
<link rel='StyleSheet' href="file://localhost/Users/petruza/Source/Scrape/build/Debug/Scrape.app/Contents/Resources/Scrape.css" type="text/css" >

插入到 DOM 中的 CSS:(我检查过,它确实被插入了)

NSURL *cssUrl = [[NSBundle mainBundle] URLForResource:@"Scrape.css" withExtension: nil];

DOMDocument* dom = [[web mainFrame] DOMDocument];

[window setTitleWithRepresentedFilename: lastRunScript];

DOMElement* link = [dom createElement:@"link"];

[link setAttribute:@"rel" value:@"StyleSheet"];
[link setAttribute:@"type" value:@"text/css"];
[link setAttribute:@"href" value: [cssUrl absoluteString]];
    
DOMElement* head = (DOMElement*) [[dom getElementsByTagName:@"head"] item:0];
DOMElement* headFirstChild = head.firstElementChild;

if( headFirstChild )    
    [head insertBefore:link refChild:(DOMNode *)headFirstChild];    
else
    [head appendChild:(DOMNode *)link];

edit2:
Same exact html shown in my WebView and in Safari:
enter image description here


您可能需要包含一个 html<base>告诉 webview 应该在哪里寻找 css 文件的元素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使 WebKit WebView 使用 CSS 样式表? 的相关文章

  • 如何观察包含许多 sass 文件的整个目录/文件夹的变化

    我如何跟踪包含许多 sass 文件的整个目录的更改 我正在使用以下命令来观察 sass 的变化 file sass watch style scss style css 但是如何观察包含许多 sass 文件的整个目录 文件夹的变化 只需使用
  • 使用 bootstrap 将搜索图标放入文本框中

    我默认使用引导程序 文本框占据列的全宽 我想将搜索图标放在文本框的末尾 我的代码是这样的 div class container div class row div class form group col lg 4 div div div
  • 如何仅使用CSS设置某个角的边框半径

    如上所示 我可以只给顶部部分而不给底部提供半径 或者有时给底部而不是顶部提供半径吗 有没有办法只给一个角提供边界半径 Like border radius top left top right bottom right bottom lef
  • div Hello div div Howdy dere pardner div div div 我明白它的作用 但为什么叫这个名字both 什么是both mean 两者的意思是 一组两件事中的每一项 左 和 右 两件事
  • 自定义 WP 主题时,我应该将导航栏放在“”标签之前还是之后?

    我正在通过制作子主题来自定义 WP 主题 我将 Bootstrap 中的导航栏放入子主题目录中的 header php 文件中 但是 我不确定在哪里放置导航栏代码 我可以把它都放在前面and之后标记成功 例如 无论我选择哪一个 导航栏都显示
  • 将 Div 放置在另一个 DIV 下方

    我有两个 DIV 元素 其中之一具有绝对位置 主 DIV 的左下角 第二个 DIV 是隐藏的 只有单击链接才能显示 我需要第二个出现在第一个下方 但由于第一个 div 的位置是绝对的 第二个 div 出现在第一个 div 之上 HTML 代
  • 如何修复“没有这样的文件或目录,lstat 'scss/'”?

    我正在尝试遵循 youtube 上的简单教程他尝试使用终端运行 npm 脚本 sass 文件 当我执行命令时npm 运行 sass显示错误消息错误 ENOENT 没有这样的文件或目录 lstat scss 我认为问题在于文件的路径或文件的权
  • 每 2 行后使 html 表格的边框变厚

    我创建了一个包含一些内容的表 其中有 12 行和 2 列 我想显示边框 但每 4 行之后 我想将水平边框设置为比正常情况更粗 怎么做 请在这里帮忙 试试这个选择器 table tr nth of type 4n td border bott
  • 使用 python 在一个 html 页面中显示分割数据框的 HTML 代码

    我是 html css 新手 所以对以 html 格式显示的数据有疑问 我有一个很长的列表 我想将其拆分并以 html 格式显示为两个单独的列 例如 而不是 Col1 Col2 1 a 2 a 3 a 4 a 5 b 6 b 7 b 8 b
  • 一个好的8086模拟器[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 mac 有没有 8086 模拟器 如果是 哪个是最好的 除非您需要真正的原始 8086 带有自定义操作系统 否则您应该尝试 DosBox
  • 在没有预览窗口的情况下使用 AVCaptureVideoDataOutputSampleBufferDelegate

    我正在开发一个基于 Swift 的 macOS 应用程序 我需要捕获视频输入 但不将其显示在屏幕上 而不是显示视频 我想将缓冲的数据发送到其他地方进行处理 并最终显示它在 a 中的一个物体上SceneKit scene 我有一个Camera
  • 两列表:一列尽可能小,另一列占据其余部分

    我在 div 中有一个 to columns 表 div table tbody tr td class action a a td td class content p Bigger text variable size p td tr
  • 如何将 UILabel 的值绑定到实例变量?

    我是 mac objective c 的新手 我的问题是 我想知道是否可以将 UILabel 文本绑定到变量 而不必在值更改时手动设置文本 例如 在 Mac OS 上 当我打开新的 Finder 窗口并删除文件时 任务栏中的全局可用空间就会
  • 如何使使用 css 调整大小的图像在 IE 中看起来不错?

    当使用 css 宽度 高度或属性宽度 高度缩放图像时 IE6 和 IE7 无法很好地缩放网页中的图像 我不确定它默认使用哪种算法 但这不好 在这些浏览器中缩放时 缩放图像会显示锯齿伪影 幸运的是 有一种方法可以通过简单的 css 规则强制
  • 如何在 OS X 上使用 OpenSSL 1.0.1 编译 PHP 5.5.19

    我已经安装了 OpenSSL 1 0 1j usr local ssl现在我尝试使用此版本的 OpenSSL 编译 PHP 5 5 19 这是我的配置过程 export CFLAGS arch x86 64 export CXXFLAGS
  • -webkit-box-shadow 与 QtWebKit 模糊?

    当时有什么方法可以实现 webkit box shadow 的工作模糊吗 看完这篇评论错误报告 https bugs webkit org show bug cgi id 23291 我认识到这仍然是一个问题 尽管错误报告被标记为RESOL
  • 减少 CoreData 的调试输出?

    我正在开发一个使用 CoreData 的 iOS macOS 项目 它工作正常 但它会向控制台输出大量调试信息 这使得控制台无法使用 因为我的打印语句隐藏在所有与 CoreData 相关的内容中 我有一个非常简单的 CoreData 设置
  • 具有 100% 高度行和 Internet Explorer 9 的表格

    我有以下示例 div style height 150px background color AAAAFF div
  • 使用 CSS 的响应式图像

    我发现调整图像大小以使其具有响应能力很棘手 我正在开发一个 php 应用程序来自动将网站转换为响应式版本 我有点被图像困住了 我已经成功地为网站上的每个图像添加了一个包装类 并且可以很好地调整图像的大小 我的问题在于自然小于窗口的图像 例如
  • Webpack 4:如何使用 LESS 获取 CSS 源映射?

    多年来我一直在尝试让 CSS 源映射在 webpack 中工作 但没有成功 我不确定链条中哪里出了问题 我希望有人能指出我正确的方向 这是发生的事情 行号是错误的 实际上文件名也是错误的 main less只是包含一堆 import也就是说

随机推荐

  • 动态生成条件JS

    我正在寻找在循环内动态生成条件的最佳方法 一个价值千字的示例 所以这是我的代码 var condition data label Test for var key in andArray condition andArray key for
  • ctypes 中的 find_library()

    我正在尝试使用 ctypes 中的命令 find library 但出现错误 我不明白其原因 我正在 Windows 上工作 这是代码 import ctypes from ctypes util import find library i
  • 仅在 Google Chrome 中显示“表单控件无效”

    下面的代码在 Safari 中运行良好 但在 Chrome 和 Firefox 中 表单将无法提交 Chrome 控制台记录错误An invalid form control with name is not focusable 有任何想法
  • 原因:com.android.dex.DexException:多个dex文件在Studio 3.0中定义Lorg/apache/commons/io/IOCase

    我正在开发一个项目 这在 Android studio 2 3 3 上工作得很好 但是当我更新我的安卓工作室3 0 https developer android com studio index html并打开我的项目 然后它无法组装 并
  • 如何对仅客户端(本地)Meteor 集合进行排序

    我只有客户端 本地 Meteor 集合定义如下 coffeescript 产品 new Meteor Collection null 然而 当我尝试 find 提供排序参数时 Meteor 告诉我不支持本地集合的排序 这是可以理解的 我想知
  • 结合group by和count mysql

    我需要使用 group by 找出表中的所有状态 SELECT status FROM table GROUP BY status 然后统计找到的结果 SELECT count id WHERE status STATUS 所以像这样的表
  • 抑制 ddl 创建脚本中的 ORA-00942 错误

    假设您生成 ddl 以通过 Hibernate SchemaExport 等创建所有数据库表等 您得到的是一个开头以 drop 语句开头的脚本 没问题 因为我想要这个 但运行此脚本会在 Oracle 数据库上运行时产生大量 ORA 0094
  • 理解OpenCV的unactor函数

    我希望使用为相机计算的畸变系数来消除图像畸变 而不更改相机矩阵 这正是undistort 确实如此 但我想将输出绘制到更大的画布图像上 当我尝试这个时 Mat drawtransform getOptimalNewCameraMatrix
  • 为什么使用 Intranet 站点的兼容模式

    我是一名 Mac 用户 网页设计师 试图了解 IE 11 的 以兼容模式显示 Intranet 站点 选项 我有一个客户 一家建筑公司 曾经在他们的 Windows 服务器上托管他们的旧网站 我没有开发的 HTML 网站 我最近为他们启动的
  • 找不到名为“MainStoryboard_iPad”的故事板

    我无法在模拟器中运行我的项目 因为我收到此错误 找不到名为 MainStoryboard iPad 的故事板 但故事板就在那里 谢谢 我通过以下步骤在我的 iPad 应用程序中成功解决了这个问题 检查构建阶段 编辑 Info plist 文
  • C# 最快的 2 组排序值并集

    合并两组排序值的最快方法是什么 速度 big O 在这里很重要 不清楚 假设这已经被执行了数百万次 假设您不知道值的类型或范围 但有一个有效的方法IComparer
  • 获取变量(非硬编码)名称?

    我正在寻找一种检索变量名称的方法 因此我不必在需要时使用硬编码声明 对于属性名称等 我几乎不相信这是可能的 也许有人有解决方案 注意 即使不是变量 属性也会移动 Pseudo Module Module1 Sub Main Dim vari
  • Javascript:全局元素焦点监听器

    我正在尝试设置一个侦听器来侦听所有焦点事件 特别是 我试图监听输入或文本框获得焦点的任何时间 根据一些研究 广泛接受的实现这一目标的方法是这样的 document body onfocus function event Check the
  • Elasticsearch 错误“无法在路径下找到嵌套对象”

    我知道这个问题之前已经被问过多次 但现有的问题或答案都没有帮助我 查询 Elasticsearch 时出现以下错误 nested 未能在路径 出发 下找到嵌套对象 我正在运行的查询如下 explain true from 0 query n
  • 恢复 iPhone 上已购买的应用内购买项目?

    到目前为止 我得到的是 重新安装后 用户需要单击 购买功能 然后他对 0 99 美元的问题感到害怕 然后必须登录 然后被告知该功能已经购买 他可以免费获得 我知道苹果是一种宗教 用户也是坚定的信徒 但是有没有更好的方法呢 我想要的是检查该功
  • 处理 Windows 应用程序的结束进程

    是否可以在同一个 Windows 应用程序本身中捕获 Windows 应用程序的任务管理器结束进程 我正在使用 C 2 0 win 应用程序 当结束进程发生时 我想进行一些数据库处理 将数据库中的标志从 Y 更改为 N 不 不可能挂钩操作系
  • 通过引用传递匿名变量

    标准 C 类型 例如 int 或 char 具有构造函数 因此您可以使用如下表达式 int a int 67 create anonymous variable and assing it to variable a int b 13 in
  • XMLHttpRequest 对象的 open 方法的相对路径

    在包含 Ajax 请求的 JavaScript 文件中 URL 与什么相关 我有包含目录 alpha 和 bravo 的 www 目录 alpha 中的 JavaScript 文件 包含它的 HTML 文件以及 bravo 中处理请求的 P
  • C# 中匹配换行符 (\n) 的正则表达式

    好吧 这个让我抓狂 我有一个这样形成的字符串 var newContent string Format 0 n 1 stripped content reply newContent 将显示如下 旧文本 新文本 我需要一个正则表达式来去除括
  • 如何使 WebKit WebView 使用 CSS 样式表?

    我制作了一个带有 CSS 文件链接的 html 在浏览器中打开它 样式显示正确 然后我将其加载到 WebView 中 但样式不显示 我什至尝试插入一个从 Objective C 到 DOM 这是我的最终目标 但都没有成功 我是否必须以某种方