如何在 django 模板中嵌入 SVG 图像

Man*_*ani 2 django svg django-templates

我正在尝试在使用 django 模板构建的网页上显示 SVG 图像。

如果我简单地说

<figure>
  <embed type="image/svg+xml" src="test.svg" width="75%" height="75%"/>
</figure>
Run Code Online (Sandbox Code Playgroud)

在 HTML 文件中,然后呈现 SVG 文件(由 Chrome)。

但是如果我尝试在 django 模板中做同样的事情,它就行不通了。我也试过使用

 <iframe src="bar_chart.svg" width="200" height="200" ></iframe>
Run Code Online (Sandbox Code Playgroud)

以及其他一些变体。

django 中显示 SVG 图像的最佳方式是什么?

小智 6

我强烈建议使用 SVG inline。在我之前的工作中,我尝试使用嵌入在 Django 项目中的对象,但我同事的弹出窗口阻止程序阻止了它们。

将 SVG 重命名为具有 HTML 扩展名,将 SVG 放在您的模板目录之一中,然后使用 include 标记。

{% 包含 'bar_chart.svg' %}

关于内联的最好的事情是你可以用 css 定位 SVG 中的任何东西,糟糕的是 IE8 和更旧的版本不支持它,android 2.3 及更低版本也是如此。

如需更多 SVG 优点,查看https://css-tricks.com/using-svg/