例如,我将图像的url呈现为"exmaple.html“。
self.render("example.html", image=image)然后在模板中:如果我想将其用于背景图像,该如何编写?
我在CSS文件中尝试了一下:
background-image: url({{image}});但它不起作用。
非常感谢您的帮助!
发布于 2014-01-02 03:51:17
您是将css作为静态文件还是模板提供服务?您必须将其作为模板才能解释{{image}}之类的表达式。(但要小心- Tornado不知道如何转义要包含在CSS中的文本,所以如果图像可能包含用户提供的任何文本,您必须自己验证或转义它)。
不过,与其让CSS文件成为模板,不如让它保持静态,并将不同的部分放在HTML中。如果图像是几种可能性之一,您只需为每个图像定义一个类并在html中引用该类即可。如果有太多的可能性要列出,内联样式属性可能是最好的方法(但请参阅前面关于转义的注释)
发布于 2014-01-10 02:04:02
在基本模板中添加CSS块。然后您可以使用它来指定CSS规则。
base_template.html:
<html>
<head>
<title>Some Title</title>
{% block css %}{% end %}
</head>
<body>
{% block body %}{% end %}
</body>
</html>在将呈现的文件中:
{% extends "base_template.html" %}
{% block css %}
<style type="text/css">
background-image: url( {{ image }} );
</style>
{% end %}https://stackoverflow.com/questions/20868653
复制相似问题