【问题标题】:How to remove blank space from the source code using TYPO3 Flow?如何使用 TYPO3 Flow 从源代码中删除空格?
【发布时间】:2012-11-16 04:17:43
【问题描述】:

在执行主页时,我的源代码中出现了不必要的空间。不知道这个空间是从哪里来的。它是使用 TYPO3 Flow(以前称为 Flow3)概念编码的。我需要调用一个 XML 文件 - 但由于有空格,它不满足 xml 规则

它显示 27 个空白行,并在第 27 行开始显示标记,就像这样的布局:

 ...
 ...
 24
 25
 26
 27 <!DOCTYPE html>
 28   <head>
 29      <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
 30      <title>REST Test</title>
 ...
 ...

【问题讨论】:

  • 已编辑标签,这不是 CSS 问题。 CSS 对 HTML 源代码没有影响。
  • 你应该检查你的 PHP 文件。可能还有一些白线。

标签: html htmltidy typo3-flow


【解决方案1】:

使用插件(如TS Tidy)或类似插件。

任何类似的插件都会在你的 HTML 被服务器渲染时以及在它被发送到浏览器之前对其进行格式化。删除空行、缩进标签等。这些插件中的大多数,无论是引擎还是语言,都是基于古老的 HTMLTidy/XMLTidy。

【讨论】:

  • 读者请注意,这不是一个TYPO3 CMS安装,而是一个基于Flow3 / TYPO3 Flow的独立应用程序。因此扩展可能不合适。但是,使用 Tidy 是一个很有价值的建议。
  • 在这种情况下还有几个选项。大多数应用程序服务器都有一个支持 tidy 的模块/插件。 Apache 有 mod_tidy,mod-tidy.sourceforge.net,我相信其他 Web 服务器也有类似的模块。我认为它甚至可以直接在 PHP 中执行此操作。您能否更新您的问题以澄清您希望在哪里进行整理?
  • 谢谢 Mr.freiheit。它解决了我的一半问题。我的一个自定义包中存在一些(XML、HTML 标头)问题,这就是为什么它反映了所有包的包含。
【解决方案2】:

这个问题是由模板引擎Fluid引起的,你只需要注意你的布局中的命名空间声明,替换这个:

<!DOCTYPE html>
{namespace foo=My\Package\ViewHelpers}
{namespace world=My\Package\ViewHelpers}
<html>

通过这个

<!DOCTYPE html>{namespace foo=My\Package\ViewHelpers}{namespace world=My\Package\ViewHelpers}
<html>

不再需要换行

【讨论】:

    【解决方案3】:

    在 flow3 中,如果我们创建的任何包中存在任何错误/警告,它将反映到活动包中。这在我的情况下会导致空白行。当我删除该包时,它会解决问题(空白行)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-27
      • 2012-08-05
      • 1970-01-01
      • 2017-12-16
      • 1970-01-01
      • 2011-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多