页面源的对齐在发布后变得扭曲

时间:2013-02-04 13:37:23

标签: tridion tridion-2011 tridion-content-delivery

我们正在使用Tridion 2011 SP1。发布页面后,页面源变得扭曲。 Javascript和其他HTMl部分出现在同一行似乎它忽略了新的行特征但是如果我们将粘贴页面源复制到Notepad ++对齐看起来很好但是在页面源中它显示为失效。即使在页面预览源中也是如此。可以做些什么来解决这个问题。

2 个答案:

答案 0 :(得分:2)

默认情况下,tridion仅使用换行来指示行尾,但大多数Windows应用程序希望行标记的结尾是回车换行,并且只显示换行符只有一行的文本。

您可以修改您的发布代码,以便渲染过程中的最后一步是在所有尚未在它们之前回车的换行符之前附加回车符,然后页面源将不会出现'扭曲'

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

答案 1 :(得分:2)

首先,正如其他人已经指出的那样,这应该是完全没必要的,并且对网站的正常运行完全没有影响。这纯粹是肤浅的。事实上,正如克里斯所提到的,许多开发人员都尽可能地“minify”他们的代码,以减少向用户传输的数据量。

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

using Tridion.ContentManager.Templating;
using Tridion.ContentManager.Templating.Assembly;

namespace SDLTridion.Bootstrap.Templating
{
    [TcmTemplateTitle("Enforce Windows Line Ending")]
    public class EnforceWindowsLineEnding : ITemplate
    {
        public void Transform(Engine engine, Package package)
        {
            Item outputItem = package.GetByName(Package.OutputName);
            string outputContent = outputItem.GetAsString();
            outputContent = outputContent.Replace("\r", "\r\n");
            outputItem.SetAsString(outputContent);
        }
    }
}