Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python PyQt WebKit CSS背景图像未显示_Python_Css_Webkit_Pyqt - Fatal编程技术网

Python PyQt WebKit CSS背景图像未显示

Python PyQt WebKit CSS背景图像未显示,python,css,webkit,pyqt,Python,Css,Webkit,Pyqt,我正在用PyQt制作一个Twitter客户端,它使用WebKit绘制tweet列表。现在我正尝试使用CSS在WebKit小部件中设置背景图像,但图像不会显示出来。这是CSS的相关部分: body {

我正在用PyQt制作一个Twitter客户端,它使用WebKit绘制tweet列表。现在我正尝试使用CSS在WebKit小部件中设置背景图像,但图像不会显示出来。这是CSS的相关部分:

body                                                                            
{                                                                               
  background-image: url("gradient2.jpg");                                         
}
文件名拼写正确,并且与Python程序位于同一目录中,这也是我启动程序的地方(因此图像文件应该在PWD中)

为了检查WebKit是否在错误的目录中查找了映像,我通过strace运行了我的程序,它创建了程序进行的所有系统调用的日志。令人惊讶的是,该图像的名称并未出现在日志中——因此,WebKit似乎甚至都没有试图找到它

为了验证WebKit是否使用了我的CSS,我尝试将其更改为纯色背景色,而不是图像:

body                                                                            
{                                                                               
  background: #CCFFCC;                                         
}
这就行了。所以我知道CSS被使用了,这不是问题所在


可能是WebKit拒绝在文件系统中使用“普通”文件,而我不得不在Qt Designer中创建某种包含图像的“资源”文件吗?

尝试删除引号。另外,请记住,如果您在“backround image:”规则之后声明“background:”速记规则,则背景图像将被覆盖。此外,文件路径应相对于css文件,而不是源文件。

您可以使用如下背景图像:

body                                                                            
{                                                                               
  background-image: url("qrc:///gradient2.jpg");                                         
}

我试过用双引号、单引号、不加引号,包括“背景:”和不加引号。另外,CSS在Python源代码中,我没有使用单独的CSS文件(我无法让它工作。起诉我。)这似乎是更基本的错误。正如我在问题中所说,根据strace日志,它看起来甚至没有试图打开图像文件。如果你给它一个绝对url会发生什么?带双引号和绝对路径,它可以工作-我非常惊讶。问题解决了,谢谢!但是,为什么早期的strace日志显示它甚至没有查找该文件?啊。我想我现在明白了。如果我没记错的话,strace默认情况下不会跟踪子进程——而且它可能是打开文件的人之一。