border-Attribut vom <img>-tag verändern - mit Lösung

  • Maike Maike
    T3PO
    0 x
    26 Beiträge
    0 Hilfreiche Beiträge
    21. 05. 2003, 17:14

    Hallo. Ich habe eine wahrscheinlich recht einfach zu beantwortende Frage.
    Ich binde in mein Template auf jeder Seite eine andere Grafik ein. (Wie es im Tutorial unter [url]http://typo3.org/doc.0.html?&tx_extrepmgm_pi1[extUid]=279&tx_extrepmgm_pi1[tocEl]=518&cHash=4ed5e9b1b7[/url] auch ganz gut erklärt wird.)

    Das funktioniert soweit wunderbar. In das erzeugte Image-Tag werden [i:7034e4fb3a]height[/i:7034e4fb3a], [i:7034e4fb3a]width[/i:7034e4fb3a] und [i:7034e4fb3a]border[/i:7034e4fb3a] als Attribute automatisch reingeschrieben. Bei height und width ist das Klasse, aber bei border möchte ich anstelle des vorkonfigurierten [i:7034e4fb3a]"border=0"[/i:7034e4fb3a] ein [i:7034e4fb3a]"border=1"[/i:7034e4fb3a].

    Ich war schon so schlau und habe in mein Template in das <img>-Tag, das ersetzt wird, eine [i:7034e4fb3a]class="RahmenUmsBild"[/i:7034e4fb3a] geschrieben, aber das <img>-Tag wird ja komplett ersetzt, und somit war die Angabe dann auch wieder verloren.

    Wie referenziere ich korrekt das <img>-Tag, damit ich eine Angabe wie [i:7034e4fb3a]"border=1"[/i:7034e4fb3a] oder [i:7034e4fb3a]class=[/i:7034e4fb3a] quasi mit dareinwrappen kann?

    In die Seite eingefügt wird es mit folgenden Zeilen aus meinem Template-Setup:

    [code:1:7034e4fb3a]
    subparts.LINKES_BILD = IMAGE
    subparts.LINKES_BILD.file {
    import.field = media
    import = uploads/media/
    import.listNum = 0
    }
    [/code:1:7034e4fb3a]

    Ich mach gerade meine ersten Schritte mit Typo3, also nicht sauer sein, wenn die Frage nicht besonders clever rüberkommt. Danke schonmal für die Geduld :-)


  • 1
  • Maike Maike
    T3PO
    0 x
    26 Beiträge
    0 Hilfreiche Beiträge
    03. 06. 2003, 21:40

    Niemand, der mir sagen kann, wie ich verhindern kann, dass mein <img border="1" src=".... im Template durch ein <img src=".... ersetzt wird durch Typo3?! Das [i:ac0510d058]kann[/i:ac0510d058] doch eigentlich nicht so schwer sein? Gibt es vielleicht eine Einstellung, mit der ich dafür sorgen kann, dass alle Attribute innerhalb eines Tags im Template (außer src="bild.jpg") [i:ac0510d058]erhalten[/i:ac0510d058] bleiben?

    Benötige dringend eine Lösung... hoffentlich weiß jemand was!

    Maike

  • Stoneage Stoneage
    Jedi-General
    0 x
    1143 Beiträge
    0 Hilfreiche Beiträge
    04. 06. 2003, 15:10

    Versuch Dich mal am Constant-Editor, vielleicht kannst du das da einstellen!?

    Gruß, Chi

  • Maike Maike
    T3PO
    0 x
    26 Beiträge
    0 Hilfreiche Beiträge
    18. 06. 2003, 09:34

    [quote:89bdd967a5="Tetramatrix"]Versuch Dich mal am Constant-Editor, vielleicht kannst du das da einstellen!?[/quote:89bdd967a5]
    Das habe ich auch erstmal versucht:
    [img:89bdd967a5]http://www.virtualgaucho.com/fileadmin/bilder/t3pics/img_border1.gif[/img:89bdd967a5]
    Brachte aber nichts.
    Ich habe dann im Setup meines Template nur genau dem immer variierenden Bild (das aber logisch immer an der selben Stelle steht) einen 1 Pixel breiten Rahmen hinzugefügt mit folgendem Teil:
    [code:1:89bdd967a5]
    # das linke Rubrikenbild immer durch das im Page Header angegebene erste Bild ersetzen
    subparts.LINKES_BILD = IMAGE
    subparts.LINKES_BILD.params = border=1
    subparts.LINKES_BILD.file {
    import.field = media
    import = uploads/media/
    import.listNum = 0
    }
    [/code:1:89bdd967a5]
    Der "params = border=1"-Teil ist hier der interessante, wie ihr euch denken könnt :-)
    Aber... das brachte auch nicht wirklich was, denn nun wurde ein HTML-Code erzeugt, der so aussah:
    [code:1:89bdd967a5]<img src="bild.jpg" width="225" height="225" border="0" border="1">[/code:1:89bdd967a5]
    Abgesehen davon, dass das unsauberes HTML ist, wurde natürlich auch kein Rahmen angezeigt.
    Aber die Tatsache, dass vor dem border="0" immer zwei Leerzeichen waren, brachte uns schließlich dazu, dem Übeltäter [i:89bdd967a5]hartkodierter Parameter[/i:89bdd967a5] auf die Spur zu kommen.
    Editiert werden muss die Datei
    ./typo3_src-3.5.0/tslib/class.tslib_content.php
    und zwar in diesem Teil:
    [code:1:89bdd967a5]// This array is used to collect the image-refs on the page...
    $theValue = '<img src="'.$GLOBALS["TSFE"]->absRefPrefix.$info[3].'" width="'.$info[0].'" height="'.$info[1].'"  border="0"'.($conf["params"]?" ".$conf["params"]:"").($alttext?' alt="'.$alttext.'"':'').'>';[/code:1:89bdd967a5]
    Hier haben wir die Angabe über den Rahmen (border="0") rausgenommen, und schon sieht mein Bild mit Rahmen viiiel besser aus... *freu*

    Es war zwar eine Anfänger[i:89bdd967a5]frage[/i:89bdd967a5], aber bestimmt keine Anfänger[i:89bdd967a5]antwort[/i:89bdd967a5] auf das Problem! :-)

  • birgitr birgitr
    Jedi-Meister
    0 x
    337 Beiträge
    0 Hilfreiche Beiträge
    18. 06. 2003, 22:51

    >Es war zwar eine Anfängerfrage, aber bestimmt keine Anfängerantwort auf das Problem! :-)

    Irgendwie doch, denn Du hast direkt im CMS rumgepfuscht und alle Bilder, die Du jemals einladen willst, verändert.
    Es geht viel einfacher:
    marks.CONTENT_BILD {
    10 = IMAGE
    10.file {
    import.field = media
    import = uploads/media/
    import.listNum = 0
    #width = 300
    #height = 450
    }
    10.wrap = <span style="border: 1px solid #FF0000;">|</span>
    }

    liebe Grüße
    Birgit

  • Maike Maike
    T3PO
    0 x
    26 Beiträge
    0 Hilfreiche Beiträge
    23. 06. 2003, 11:25

    [quote:a732494edd="birgitr"]Irgendwie doch, denn Du hast direkt im CMS rumgepfuscht und alle Bilder, die Du jemals einladen willst, verändert.[/quote:a732494edd]

    Nnjein... ;-)

    Als rumgepfuscht empfinde ich es nicht, wenn ich etwas hartkodiertes=absolut unflexibles aus dem CMS herausnehme, was da auch m. E. gar nicht reingehört. (Ich habe ja nicht im CMS [i:a732494edd]border="0"[/i:a732494edd] durch [i:a732494edd]border="1"[/i:a732494edd] ersetzt - das wäre wirklich blöd.)

    Der Ansatz mit dem [i:a732494edd]<span>[/i:a732494edd]-Wrap ist gut. Allerdings kombiniere ich in meinem Layout good old HTML 3.2 und HTML 4, weshalb mir das Attribut [i:a732494edd]border="1"[/i:a732494edd] im [i:a732494edd]<img>[/i:a732494edd]-Tag so wichtig war. Ich hätte dieses Attribut ja am liebsten aus meinem Template übernommen, aber es wurde vom Typo3 überschrieben.

  • 1