FCE Mapping Problem mit a- und img-Tags

  • sami sami
    T3PO
    0 x
    13 Beiträge
    0 Hilfreiche Beiträge
    07. 02. 2006, 12:02

    hallo forum,

    beim mapping stoße ich zurzeit immer wieder auf dasselbe problem. hoffe, ihr könnt mir weiterhelfen.

    relevanter teil meines html-templates:

    [HTML]<div>
    <img src="img/test.gif" alt="" />
    <br />
    <a href="" class="link-01">
    <img src="img/test.gif" alt="" />
    </a>
    <br />
    <a href="" class="link-02">Das ist ein Link</a>
    </div>
    [/HTML]

    das <div> enthält also
    1.) ein bild
    2.) ein verlinktes bild (a-tag hat zur orientierung die class "link-01")
    3.) einen textlink (a-tag hat zur orientierung die class "link-02")

    für mein flexible content element mappe ich nun folgendermaßen:

    [b]ROOT:[/b] <div>INNER, (ALL)
    [b]Img above:[/b] <img alt="" />, (ALL)
    [b]Link1:[/b] <a>ATTR:href, a:attr:href
    [b]Img:[/b] <a>INNER, *:inner
    [b]Link2:[/b] <a>ATTR:href, a:attr:href
    [b]Text:[/b] <a>INNER, *:inner

    das zweite (verlinkte) bild (Img) muss ich anscheinend *:inner auf den umschließenden a-tag mappen, da (ALL) direkt auf den img-tag sofort eine warnung erzeugt <!>

    nun füge ich das flexible content element als seiteninhalt ein und befülle es folgendermaßen:

    [b]Img above:[/b] above.gif
    [b]Link1:[/b] http://www.google.at
    [b]Img:[/b] link-img.jpg
    [b]Link2:[/b] http://www.typo3.org
    [b]Text:[/b] Hier gehts zu Typo3

    betrachtet man den quelltext entsteht dann aber (für mich unverständlicherweise) folgendes:

    [HTML]<!-- CONTENT ELEMENT, uid:44/templavoila_pi1 [begin]-->
    <a name="44"></a>
    <a href="http://www.typo3.org" target="_top">
    <img src="uploads/tx_templavoila/above.gif" alt="" title="" border="0" height="18" width="69" />
    </a>
    <br />
    <a href="http://www.google.at" class="link-01"></a>
    <a href="http://www.typo3.org" target="_top">
    <img src="uploads/tx_templavoila/link-img.jpg" alt="" title="" border="0" height="60" width="80" />
    </a>
    <br />
    <a href="http://www.typo3.org" class="link-02">Hier gehts zu Typo3</a>
    <!-- CONTENT ELEMENT, uid:44/templavoila_pi1 [end]-->
    [/HTML]

    es wird also der zweite link (Link2), der eigentlich nur für den textlink gedacht ist, um jedes einzelne inhaltselement (Img above und Img) gelegt. und Link1, der eigentlich für das verlinkte bild (Img) gedacht war steht als leeres Element vor dem Bild.

    ich wäre euch sehr zu dank verpflichtet, wenn mir jemand erklären könnte wo mein fehler liegt!!!

    danke!
    sami


  • 1
  • sami sami
    T3PO
    0 x
    13 Beiträge
    0 Hilfreiche Beiträge
    07. 02. 2006, 13:35

    hm.

    bin nach einiger recherche nun auf die to do list zu templavoila gestoßen:
    [url]http://typo3.org/documentation/document-library/doc_tut_ftb1/ToDo_of_TemplaVoila/[/url]

    Mapping will fail if you map an attribute which is in a tag containing others. There might be other bugs as well, slightly confusing.

    daran wird's wohl liegen.

    falls jemand eine idee hat wie ich das anders mit templavoila lösen könnte (img in a-tag), wäre ich recht dankbar!

    lg, s.

  • demeter demeter
    Sternenflotten-Admiral
    0 x
    250 Beiträge
    0 Hilfreiche Beiträge
    08. 02. 2006, 07:56

    hi sami
    probier mal mit containern ala

    [HTML]<table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td>
    <a href="#"><img src="bild.gif" alt="derAlt" width="" height="" border="0" /></a>
    </td>
    </tr>
    <tr>
    <td>
    <a href="#">schau mal da</a>
    </td>
    </tr>
    </table>
    [/HTML]
    auf der selben ebene:
    a tag ist ein container/set inner, href ein attribut mit linkfield
    eine ebene tiefer, also im container setzt du dann das img /set outer als element
    für den Textlink:
    den container setzt du auf die <tr> oder <td> und dann im container:
    a href ein attribut mit linkfield
    a tag element mit plain input field/set inner

    Dein Beispiel modifiziert
    [HTML]<body>
    <div>
    <div>
    <img src="img/test.gif" alt="" />
    </div>
    <div>
    <a href="" class="link-01">
    <img src="img/test.gif" alt="" />
    </a>
    </div>
    <div>
    <a href="" class="link-02">Das ist ein Link</a>
    </div>
    </div>
    </body>
    [/HTML]

    bei deinem beispiel musst du also noch einen umschliessenden html-tag setzen, z.B. ein neues div oder einen span um den text
    wenn du die root auf den Body setzt und einen section container um das erste div legst mit set inner und die container dann mit set outer um die inneren div, dann kannst du immer neue links und textlinks dazugenerieren im BE

    grüsse kilian

  • sami sami
    T3PO
    0 x
    13 Beiträge
    0 Hilfreiche Beiträge
    08. 02. 2006, 09:36

    hallo kilian,

    danke für den vorschlag! kann ich mir gut vorstellen, dass es mit zusätzlichen containern auch funktionieren könnte.

    ich hab's aber nicht probiert, da ich es mittlerweile schon anders (mit ein bisschen css hicksi-hacksi) gelöst hab.

    der quelltext schaut jetzt so aus (ohne das erste bild):

    [HTML]<div>
    <img src="img/test.gif" alt="" />
    <a href="" class="link-01">Bild vergrößern</a>
    <a href="" class="link-02">Das ist ein Link</a>
    </div>
    [/HTML]

    dadurch, dass kein a-tag, dessen href-attribut ich mappen möchte ein html element enthält, funktioniert das mapping tadellos.

    im css blende ich die schrift (mit großem text-indent) vom ersten link aus und lege den link (mit position:relative) über das bild.

    vereinfacht also so:

    [HTML]a.link-01 {
    display:block;
    height:60px;
    width:60px;
    position:relative;
    top:-60px;
    text-indent:-5000px;
    background:url(../img/img-plus.gif) 0 50px no-repeat;
    }
    [/HTML]

    hat zwar nix mehr mit typo3 zu tun, aber vielleicht interessiert's ja trotzdem wen...

    danke nochmal für die hilfe!

    lg, simone

  • fantasmo fantasmo
    TYPO3-Anwärter
    0 x
    7 Beiträge
    0 Hilfreiche Beiträge
    26. 11. 2009, 19:43

    Hallo,

    wenn ich ein <img>-Tag als imagefield mappe bringt mir das nur einen Bildupload.

    Wie kann ich diesen aber noch um eine Auswahlmöglichkeit "float left", "float right", "center, rechtsbündig, linksbündig" ergänzen? Z.B. so dass die Auswahl eines dieser Zustände dem <img>-Tag dann noch eine class "floatleft" usw. hinzufügt.
    Dann könnte ich diese Klasse ganz exakt per CSS kontrollieren (ich möchte nicht mit den default-Inhaltselementen von Typo3 arbeiten).

    Ich habe durch googeln nicht so die richtige Lösung dafür gefunden und hoffe mir kann hier jemand sagen, wie man das bewerkstelligen kann...

  • 1