Problem mit individuellen Styles im RTE

  • Herbie01 Herbie01
    T3PO
    0 x
    15 Beiträge
    0 Hilfreiche Beiträge
    21. 12. 2010, 14:10

    Hallo,

    bei mir macht der RTE mal wieder nichts so wie er soll, so dass ich inzwischen nur noch Frust habe wenn ich mit dem RTE und Typo3 beschäftige. Ich bin kurz davor mein Typo3-Projekt komplett einzustampfen und mich sinnvolleren Dingen zu widmen als mich, wie bisher, monatelang damit rumzuärgern. Dummerweise bin ich aber jemand der die Dinge, die er angefangen hat auch zu Ende bringen will.

    [b]Das konkrete Problem:[/b]
    Ich möchte eigentlich nur im RTE von Typo3 4.4.4 einen Blockstil hinzufügen und gerne einige der Standardstile entfernen. Funktioniert aber nicht.
    Ich habe mich schon durch zig Forenbeiträge, Manualseiten etc. durchgewühlt, aber nichts hat den gewünschten Erfolg gebracht. Es kann doch nicht sein, dass man 10 Jahre Informatik studiert haben muss um nur einen Stil hinzufügen zu können!

    Ich benutze momentan das unten stehende Script in der TSconfig meiner Root-Seite. Wenn ich z.B. contentCSS auskommentiere, habe ich im RTE die Standardstil (soweit ok). Wenn ich aber meine eigene Stylesheetdatei angebe, dann sind die Dropdowns für die Stile leer bzw. sind ausgegraut und lassen sich nicht nutzen.
    Meine Stylesheet-Datei ist eine 1:1 Kopie der typo3/sysext/rtehtmlarea/res/contentcss/default.css

    Könnte mir mal jemand verständlich erklären was ich wo noch machen muss damit ich endlich meine eigenen Stilvorgaben in den RTE gehämmert bekomme?

    1. RTE.classes.reference{
    2. name = Referenz
    3. value = color:#aa0000;
    4. }
    5.  
    6. RTE.default {
    7. contentCSS = fileadmin/template/rte.css
    8. #showTagFreeClasses = 1
    9. enableWordClean = 1
    10.  
    11. classesCharacter := addToList(reference)
    12.  
    13. proc {
    14. allowedClasses := addToList(reference)
    15.  
    16. entryHTMLparser_db = 1
    17. entryHTMLparser_db {
    18. tags {
    19. blockquote.allowedAttribs = id, title, dir, lang, xml:lang, class
    20. blockquote.fixAttrib.style.unset = 1
    21. }
    22. }
    23.  
    24. exitHTMLparser_db = 1
    25. exitHTMLparser_db {
    26. keepNonMatchedTags = 1
    27. tags {
    28. b.remap = strong
    29. i.remap = em
    30. }
    31. }
    32.  
    33. exitHTMLparser_rte = 1
    34. exitHTMLparser_rte {
    35. allowTags = p,br,b,i,strong,em,blockquote,pre,h1,h2,h3,h4,h5,h6,span,div,a,address,sub,sup,ul,ol,li
    36. tags {
    37. strong.remap = b
    38. em.remap = i
    39. }
    40. }
    41. }
    42. }

    Sorry, wenn mein vielleicht Ton nicht unbedingt der freundlichste ist, aber der Frust sitzt inzwischen verdammt tief.


  • 1
  • lisardo lisardo
    Jedi-Meister
    0 x
    306 Beiträge
    0 Hilfreiche Beiträge
    21. 12. 2010, 18:31

    Hallo

    zunächst wäre es hilfreich, wenn du schreibts, welche TYPO3-Version. Falls du die 4.4.5 verwendest: dort gibt es einen Bug, der dafür sorgt, dass man im RTE momentan keine inline-Stile speichern kann. Ich denke, das wird in den nächsten Tagen gefixt, aber momentan gehts nicht.

    Blockstile gehen allerdings, und genau danach fragst du.

    Der RTE ist wirklich unglaublich mächtig, man kann im Prinzip fast alles damit machen. Aber genau deshalb ist er auch schwierig in der Konfiguration. Man kann nicht einfach ausprobieren, sondern die Einstellungen müssen schlicht passen.

    Über die Standardeinstellung "Typical" im Extension-Manager werden folgende Inline-Styles definiert:

    1. RTE.default {
    2. inlineStyle.text-alignment (
    3. p.align-left, h1.align-left, h2.align-left, h3.align-left,
    4. h4.align-left, h5.align-left, h6.align-left, div.align-left,
    5. address.align-left { text-align: left; }
    6. p.align-center, h1.align-center, h2.align-center,
    7. h3.align-center, h4.align-center, h5.align-center, h6.align-center,
    8. div.align-center, address.align-center { text-align: center; }
    9. p.align-right, h1.align-right, h2.align-right, h3.align-right,
    10. h4.align-right, h5.align-right, h6.align-right, div.align-right,
    11. address.align-right { text-align: right; }
    12. p.align-justify, h1.align-justify, h2.align-justify,
    13. h3.align-justify, h4.align-justify, h5.align-justify,
    14. h6.align-justify, div.align-justify,
    15. address.align-justify { text-align: justify; }
    16. )
    17. ## Two frame examples taken from the example CSS file of CSS
    18. ## Styled Content extension and applied to p and table block elements.
    19. inlineStyle.frames (
    20. p.csc-frame-frame1, table.csc-frame-frame1
    21. { background-color: #EDEBF1; padding: 2px 4px 2px 4px; border: 1px solid #333333; }
    22. p.csc-frame-frame2, table.csc-frame-frame2
    23. { background-color: #F5FFAA; padding: 2px 4px 2px 4px; border: 1px solid #333333; }
    24. )
    25. ## Bullet styles for unordered lists.
    26. inlineStyle.ul (
    27. ul.component-items { color: #186900; list-style-type: circle; }
    28. ul.action-items { color: #8A0020; list-style-image: url(img/red_arrow_bullet.gif); }
    29. )
    30. ## Numbering styles for ordered lists.
    31. inlineStyle.ol (
    32. ol.component-items-ordered { color: #10007B; list-style-type: lower-roman; }
    33. ol.action-items-ordered { color: #8A0020; list-style-type: lower-greek; }
    34. )
    35. ## Three inline text colors taken from the color
    36. ## scheme of CSS Styled Content extension.
    37. inlineStyle.inline-text (
    38. span.important { color: #8A0020; }
    39. span.name-of-person { color: #10007B; }
    40. span.detail { color: #186900; }
    41. )
    42. ## Default selectors for the default configuration of
    43. ## the link accessibity feature.
    44. inlineStyle.accessibility (
    45. a.external-link {}
    46. a.external-link-new-window {}
    47. a.internal-link {}
    48. a.internal-link-new-window {}
    49. a.download {}
    50. a.mail {}
    51. )
    52. ## Default selector for indentation.
    53. inlineStyle.indentation (
    54. div.indent { margin-left: 2em; }
    55. )
    56. }

    Um eine Rubrik komplett zu entfernen:

    1. RTE.default.inlineStyle.text-alignment >

    Oder diese neu definieren:
    1. RTE.default.inlineStyle.frames (
    2. p.csc-frame-frame1, table.csc-frame-frame1
    3. { background-color: #XYZXYZ; padding: 20px; border: 20px solid #333333; }
    4. )

    und so weiter.

  • lisardo lisardo
    Jedi-Meister
    0 x
    306 Beiträge
    0 Hilfreiche Beiträge
    21. 12. 2010, 18:40

    Um einen neuen Blockstil anzulegen sind folgende Einträge nötig bzw. sinnvoll:

    Zunächst [b]muss[/b] sich die CSS-Definition in deiner rte.css befinden! Wenn sich dort die passende Klasse nicht findet, wird sie im RTE auch nicht zur Verfügung stehen. Ausserdem hängt es von der Einstellung

    1. showTagFreeClasses=

    ab, es so funktioniert:
    1. .deineKlasse {}

    oder das hier nötig ist:
    1. p.deineKlasse {}
    2. span.deineKlasse ()

    jeweils für alle HTML-Tags, denen du die Klasse im RTE zuweisen willst

    Deine restlichen Einträge scheinen zu stimmen. Deshalb meine ich, es müsste an der CSS-Datei liegen.

    ----

    Aber Achtung:

    ----

    Ich sehe gerade, dass du ansonsten im TS die Klassen richtig zuweist, allerdings bei classesCharacter ... Also willst du offensichtlich doch keinen Blockstil, sondern einen Textstil, einen Inline-Style, der via span vergeben wird. Da haben wir leider seit letzter Woche ein Problem mit dem letzten Security-Update. Die Klassen können nämlich zugewiesen werden, sie werden aber nicht (mehr) gespeichert.

    Hier ist die Beschreibung und mittlerweile auch ein Fix:

    http://bugs.typo3.org/view.php?id=16760

    Ich schätze, es wird bald ein 4.4.6 geben ...

    Peter, [url=http://www.typo3-lisardo.de]TYPO3 @ lisardo (Augsburg)[/url]

  • hwt hwt
    Sternenflotten-Admiral
    0 x
    217 Beiträge
    0 Hilfreiche Beiträge
    27. 12. 2010, 20:00

    Ohja, der RTE kann am Anfang "nerven". Aber lisardo hat recht, die Konfiguration muss einfach stimmen und dafür muss man sie verstehen.

    Mir hat die Lektüre von [url=http://site42.de/Wie-konfiguriert-man-den-RTE-h.58.0.html]http://site42.de/Wie-konfiguriert-man-den-RTE-h.58.0.html[/url] und Unterseiten geholfen.

    Vllt. bringt dir das auch was.

    MfG

  • 1