为什么 QWebkit 在 -webkit-scrollbar css 中使用时无法解析 file:// 和 qrc:// ?
示例#1:
::-webkit-scrollbar-button {
background-image: url(file:///tmp/bg.png);
}
示例#2:
::-webkit-scrollbar-button {
background-image: url(qrc://bg.png);
}
以上示例仅在 QWebPage 显示本地 html 页面时才有效。对于 http://stackoverflow.com 它不起作用。我已经使用 QWebSettings::setUserStyleSheetUrl() 设置样式 - 它是一个用户样式表。
Example #1:
::-webkit-scrollbar-button {
background-image: url(file:///tmp/bg.png);
}
Example #2:
::-webkit-scrollbar-button {
background-image: url(qrc://bg.png);
}
Above examples are working only when QWebPage shows local html page. For http://stackoverflow.com it doesn't work. I've set the style using QWebSettings::setUserStyleSheetUrl() - it's a user style sheet.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您必须使用命令行标志
--allow-file-access-from-files
启动 Chrome(我假设这是您正在使用的浏览器),否则它将无法动态加载本地文件(使用 file:// 协议),因为这可能是一个很大的安全风险。您可以看到http://code.google.com/p/chromium/issues/detail?id=4197&can=1&q=allow-file-access-from-files&colspec=ID%20Stars% 20Pri%20Area%20Feature%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS有关此标志的完整历史,为什么它的行为如此以及为什么它如此实现。
You have to start Chrome (I'm assuming that's the browser you're using) with the command line flag
--allow-file-access-from-files
, or else it won't dynamically load local files (using the file:// protocol), as this could be a big security risk.You can see http://code.google.com/p/chromium/issues/detail?id=4197&can=1&q=allow-file-access-from-files&colspec=ID%20Stars%20Pri%20Area%20Feature%20Type%20Status%20Summary%20Modified%20Owner%20Mstone%20OS for a complete history of this flag, why it behaves like this and why it#s implemented like this.