Beim Bearbeiten einer Komponente in einem Rich-Text-Feld (RTF) im Content-Management-System von SDL Tridion 2011 habe ich festgestellt, dass das Drücken der Eingabetaste zu verschiedenen HTML-Tags in der Quelle führt.
Ich denke, es basiert auf dem Browser, da ich <div>
mit Chrome komme . Wie stelle ich sicher, dass ich <p>
Tags in allen Browsern erhalte ?
Update:
SDL Tridion 2011 SP1 enthält Folgendes im Standard-XSLT-Schema-Rich-Text-Filter, der das Szenario des Drücken der Eingabetaste beim Bearbeiten von normalem Text oder Absätzen zu beheben scheint. Ich habe immer noch das Problem, wenn ich nach einer Überschrift die Eingabetaste drücke, die div
in Chrome angezeigt wird.
<stylesheet xmlns="http://www.w3.org/1999/XSL/Transform" version="1.0">
<output omit-xml-declaration="yes" method="xml" cdata-section-elements="script"></output>
<template match="/ | node() | @*">
<copy>
<apply-templates select="node() | @*"></apply-templates>
</copy>
</template>
<template match="*[ (self::br or self::p or self::div) and normalize-space(translate(., ' ', '')) = '' and not(@*) and not(processing-instruction()) and not(comment()) and not(*[not(self::br) or @* or * or node()]) and not(following::node()[not( (self::text() or self::br or self::p or self::div) and normalize-space(translate(., ' ', '')) = '' and not(@*) and not(processing-instruction()) and not(comment()) and not(*[not(self::br) or @* or * or node()]) )]) ]">
<!-- ignore all paragraphs and line-breaks at the end that have nothing but (non-breaking) spaces and line breaks -->
</template>
<template match="br[parent::div and not(preceding-sibling::node()) and not(following-sibling::node())]">
<!-- Chrome generates <div><br/></div>. Renders differently in different browsers. Replace it with a non-breaking space -->
<text> </text>
</template>
</stylesheet>
Die aktualisierte Frage lautet dann:
Wie stelle ich sicher, dass ich <p>
Tags in allen Browsern erhalte , auch wenn ich nach einer Überschrift die Eingabetaste drücke?