Python Chrome在html中随机插入引号

Python Chrome在html中随机插入引号,python,google-chrome,jinja2,Python,Google Chrome,Jinja2,我正在开发一个使用Flask框架和Jinja2模板的应用程序,我注意到Chrome浏览器在html中随机插入带有几个空格的引号。这并不是发生在每一页上,在这一点上,我不知道什么可能导致它。下面是它的样子: 。这可能是模板引擎造成的吗 这可能是模板引擎造成的吗 当然。在jinja中,如果要删除空白,请在模板指令中添加-。e、 g: {%- if foo -%} something {%- endif -%} 考虑以下两者之间的区别: {% set foo=false %} <div

我正在开发一个使用Flask框架和Jinja2模板的应用程序,我注意到Chrome浏览器在html中随机插入带有几个空格的引号。这并不是发生在每一页上,在这一点上,我不知道什么可能导致它。下面是它的样子:

。这可能是模板引擎造成的吗

这可能是模板引擎造成的吗

当然。在jinja中,如果要删除空白,请在模板指令中添加
-
。e、 g:

{%- if foo -%}
    something
{%- endif -%}
考虑以下两者之间的区别:

{% set foo=false %}
<div>
{%- if foo -%}
    something
{%- endif -%}
</div>
<div>
{% if foo %}
    something
{% endif %}
</div>
{%set foo=false%}
{%-如果foo-%}
某物
{%-endif-%}
{%if foo%}
某物
{%endif%}

在一种情况下,您的div中会有空格,而在另一种情况下不会有空格。

您可能在某个地方有一个未关闭的标记。你的meta、title、link标签在body标签而不是head标签中呈现。我在出现此错误的每个页面中都有三重检查标签,而标签似乎与此无关。即使我删除了它仍然显示的模板中的所有内容。以防万一有人碰巧遇到类似的问题,正如我在下面写的,这是由于编码设置不正确造成的,我必须在其中一个模板中将其设置为utf-8以外的内容。它的工作原理是删除引号中的所有空白,然而,引号本身仍然存在,更糟糕的是,它看起来完全是随机的,我通过W3C验证程序运行生成的代码,它是有效的html,所有标记都关闭了,而且Firefox呈现的一切都很好。目前,我不知道是什么原因导致了这种情况。引用不是问题(我不认为)
只是一个带有空文本的div(chrome开发者面板就是这样显示的)。在没有看到代码的情况下,很难做出判断。然而,再看看HTML,我觉得有点奇怪,你有一堆标签,它们通常包含在
中,这可能是个问题。如果你把这些东西从身体移到头部会发生什么?所有的链接标签和元标签都在头部,Chrome在渲染时会将它们直接移到身体中,我不知道为什么。我试着从页面中删除包含的js脚本,这可能是造成这种情况的原因,但没有任何效果,有趣的是,当Chrome将所有内容移出时,它总是将空链接标记放在头部。我删除了页面上的所有附加内容以及所有脚本,我已经解决了它。这是由错误的编码造成的,由于某些原因,当您使用utf 8以外的格式保存HTML文件时,会发生这种情况。谢谢你的帮助。