Tridion 发布后,页面源的对齐方式被扭曲

Tridion 发布后,页面源的对齐方式被扭曲,tridion,tridion-2011,tridion-content-delivery,Tridion,Tridion 2011,Tridion Content Delivery,我们使用的是Tridion 2011 SP1。发布后,页面的页面源被扭曲。Javascript和其他HTMl部分在同一行上,似乎忽略了新行字符,但如果我们将粘贴页面源代码复制到记事本++上,对齐效果看起来不错,但在页面源代码中,显示为未排序。即使是在页面预览源程序中,也可以正常运行。如何解决此问题。默认情况下,tridion仅使用换行符来表示行尾,但大多数Windows应用程序预期行尾标记为回车换行符,并将仅使用换行符的文本显示为只有一行 您可以修改发布代码,以便呈现过程中的最后一个步骤是在所有

我们使用的是Tridion 2011 SP1。发布后,页面的页面源被扭曲。Javascript和其他HTMl部分在同一行上,似乎忽略了新行字符,但如果我们将粘贴页面源代码复制到记事本++上,对齐效果看起来不错,但在页面源代码中,显示为未排序。即使是在页面预览源程序中,也可以正常运行。如何解决此问题。

默认情况下,tridion仅使用换行符来表示行尾,但大多数Windows应用程序预期行尾标记为回车换行符,并将仅使用换行符的文本显示为只有一行

您可以修改发布代码,以便呈现过程中的最后一个步骤是在所有换行符之前添加回车符,这些换行符之前没有回车符,这样页面源就不会显示为“扭曲”


需要注意的一点是,这不应该对向最终用户呈现页面的方式产生任何影响。

默认情况下,tridion仅使用换行符来表示换行符,但大多数Windows应用程序都希望换行符为回车换行符,并将仅使用换行符的文本显示为只有一行

您可以修改发布代码,以便呈现过程中的最后一个步骤是在所有换行符之前添加回车符,这些换行符之前没有回车符,这样页面源就不会显示为“扭曲”


需要注意的一点是,这不应该对向最终用户呈现页面的方式产生任何影响。

首先,正如其他人已经指出的,这应该是完全不必要的,并且绝对不会影响网站的正常运行。这纯粹是肤浅的。事实上,正如Chris提到的,许多开发人员努力尽可能多地“开发”他们的代码,以减少传输到用户的比特数

但是,如果您确实需要Windows样式的行尾,下面的.Net TBB应该会有所帮助。确保在生成输出后运行它

使用Tridion.ContentManager.Templating;
使用Tridion.ContentManager.Templating.Assembly;
命名空间SDLTridion.Bootstrap.Templating
{
[TcmTemplateTitle(“强制Windows行结束”)]
公共类EnforceWindowsLineEnding:ITemplate
{
公共无效转换(引擎、包)
{
Item outputItem=package.GetByName(package.OutputName);
字符串outputContent=outputItem.GetAsString();
outputContent=outputContent.Replace(“\r”,“\r\n”);
outputItem.SetAsString(outputContent);
}
}
}

首先,正如其他人已经指出的,这应该是完全不必要的,并且绝对不会影响网站的正常运行。这纯粹是肤浅的。事实上,正如Chris提到的,许多开发人员努力尽可能多地“开发”他们的代码,以减少传输到用户的比特数

但是,如果您确实需要Windows样式的行尾,下面的.Net TBB应该会有所帮助。确保在生成输出后运行它

使用Tridion.ContentManager.Templating;
使用Tridion.ContentManager.Templating.Assembly;
命名空间SDLTridion.Bootstrap.Templating
{
[TcmTemplateTitle(“强制Windows行结束”)]
公共类EnforceWindowsLineEnding:ITemplate
{
公共无效转换(引擎、包)
{
Item outputItem=package.GetByName(package.OutputName);
字符串outputContent=outputItem.GetAsString();
outputContent=outputContent.Replace(“\r”,“\r\n”);
outputItem.SetAsString(outputContent);
}
}
}

很抱歉,这有多重要?是否有任何功能损坏?如果您在Notepad++中正确地看到了源代码,则表明您可能正在使用unix样式的换行符,而不是Windows样式的换行符。您使用了哪些浏览器来检查源代码?此外,实际上去掉页面上的所有空白以提高页面加载性能是一个好主意。而不是把它放回去,你可能会考虑运行一个小型化器实际上剥离更多的它。对不起,但这是多么关键?是否有任何功能损坏?如果您在Notepad++中正确地看到了源代码,则表明您可能正在使用unix样式的换行符,而不是Windows样式的换行符。您使用了哪些浏览器来检查源代码?此外,实际上去掉页面上的所有空白以提高页面加载性能是一个好主意。而不是把它放回,你可能会考虑运行一个小型化,实际上剥离更多的。