rätselhafte Lücke

Hallo Leute Seit Beginn meiner Programmierung mit/an Shopware habe ich ein Problem, dass ich nicht behoben bekomme. Vielleicht ist es nur ein Denkfehler. Auf jeden Fall komme ich nicht weiter und möchte hier gern das Anliegen beschreiben: Angenommen ich habe ein eigenes emotion Verzeichnis emotion_XY, dort dann den Ordner index mit der index.tpl Darin folgender Kode: {extends file='parent:frontend/index/index.tpl'} {\* Breadcrumb \*} {block name='frontend\_index\_breadcrumb'} {include file='frontend/index/breadcrumb.tpl'} {/block} Dieser Kode listet mir die normale Breadcrumb auf. Soweit so gut. Jetzt kopiere ich mir den Kode aus der emotion/frontend/index/breadcrumb.tpl 1:1, erstelle in meinem emotion_XY/frontend/index-Ordner eine breadcrumb.tpl mit selbigem Inhalt. Schon tritt auf der Webseite bzw im Shop eine Lücke auf. Diese Lücke sieht man dann auch schön im Firebug. Schnappschuss mit Lücke: Schnappschuss ohne Lücke: Diese Lücke stört natürlich, auch weil sie für mich nicht nachvollziehbar ist. Was muss ich ändern, um auf meine breadcrumb.tpl zuzugreifen (ohne Lücke)? Hatte schon mal jemand das Problem? Mit freundlichen Grüßen Mike

hast du kontrolliert, dass im code kein leerzeichen ist? // edit hab’s mal in emotion_orange nachgestellt. index/index.tpl {extends file='parent:frontend/index/index.tpl'} {\* Breadcrumb \*} {block name='frontend\_index\_breadcrumb'} {include file='frontend/index/breadcrumb.tpl'} {/block} index/breadcrumb.tpl [code] {* Breadcrumb *}

{if $sShopname} {se name=‘BreadcrumbDefault’}{/se} [{$sShopname}]({url controller=‘index’}) {/if} {foreach name=breadcrumb from=$sBreadcrumb item=breadcrumb} {if $breadcrumb.name} {if $smarty.foreach.breadcrumb.last} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} “{$breadcrumb.name}”) {else} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} “{$breadcrumb.name}”) {/if} {/if} {/foreach}
[/code] kein problem. wie sieht dein breadcrumb.tpl aus? mit abstand {\* Breadcrumb \*}   {if $sShopname} {se name='BreadcrumbDefault'}{/se} [{$sShopname}]({url controller='index'}) {/if} {foreach name=breadcrumb from=$sBreadcrumb item=breadcrumb} {if $breadcrumb.name} {if $smarty.foreach.breadcrumb.last} /[**{$breadcrumb.name}**]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} "{$breadcrumb.name}") {else} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} "{$breadcrumb.name}") {/if} {/if} {/foreach}

Hallo pino. Vielen Dank für die schnelle Antwort. Hmm, mein Quellkode sieht so aus: [code]{* Breadcrumb *}

Sie befinden sich hier

{if $sShopname} [{*{$sShopname}*}Home]({url controller=‘index’}) {/if} {foreach name=breadcrumb from=$sBreadcrumb item=breadcrumb} {if $breadcrumb.name} {if $smarty.foreach.breadcrumb.last} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} “{$breadcrumb.name}”) {else} /[{$breadcrumb.name}]({if $breadcrumb.link}{$breadcrumb.link}{else}#{/if} “{$breadcrumb.name}”) {/if} {/if} {/foreach}

[/code] Meines Erachtens kein Leerzeichen drin. Zumindest nicht vor dem div id=breadbrumb. Merkwürdig … Kann es sein, dass mein Visual Studio unsichtbare Steuerzeichen einfügt, die man dann im Editor nicht sieht?

guck dir mal den erstellt quellcode mit strg+u (in FF) an (quellcode nicht von firebug). also dein tpl macht auch kein problem, bis auf [code]

Sie befinden sich hier

[/code] ich denke mal, du musst ggf. etwas mehr css machen. was sagt firebug zu diesem element?

Gib bitte einen Link auf die Webseite, damit man sieht, was dort tatsächlich steht. Viele Grüße HTH

[quote=“hth”]Gib bitte einen Link auf die Webseite, damit man sieht, was dort tatsächlich steht.[/quote] Den Link darf ich nicht rausgeben, da dieses Projekt zwar stark am Laufen aber noch nicht freigegeben ist. Vielleicht lade ich den Effekt noch mal auf einen Privatserver hoch… Der Quelltext zeigt dasselbe wie der Firebug. Vielleicht könnte es doch an irgend einem unsichtbaren Zeichen liegen? Kriegt man irgendwie raus, ob so etwas vorhanden ist? Fakt ist, dass ich diesen Effekt bei vielen Stellen im Projekt habe und auch bei anderen Shopware-Shops, die übrigens alle mit demselben Editor bearbeitet wurden (Visual Studio). Okay. Ich versuche mal herauszufinden, ob sich dort ein Zeichen drin versteckt hat.

Ohne Live-Demo ist das doch alles nur Kaffeesatz-Leserei. Ich halte es auch für ein mangelhaftes CSS/HTML-Konzept. Wenn das ein kommerzielles Projekt ist, sollte das auch Agentur-seitig gelöst werden. Viele Grüße HTH (info@mycetome.de)

[quote=“hth”]Ohne Live-Demo ist das doch alles nur Kaffeesatz-Leserei. Ich halte es auch für ein mangelhaftes CSS/HTML-Konzept. Wenn das ein kommerzielles Projekt ist, sollte das auch Agentur-seitig gelöst werden.[/quote] @hth: ich arbeite in einer Agentur und muss mich ja auch irgendwie schlau machen, wenn Fehler auftauchen. Vor Fehlern ist ja nun mal niemand gefeit. Auf jeden Fall habe ich die breadcrumb.tpl im notepad++ geöffnet und “Kodierung -> UTF-8 ohne BOM” gewählt und die Datei erneut gespeichert. Danach war dann der Fehler weg. Also lag es an einem unsichtbaren Zeichen. Vielen Dank Euch allen für’s Mittüfteln. Schöne Woche noch Mike

Hallo, Dateien, die in Skripten „included“ werden, sollten immer als UTF8 ohne BOM gespeichert werden. Es ist zum einen nur bei UTF16 notwendig und wird meist nicht korrekt abgefragt. Da sind dann Leerzeilen und/oder andere merkwürdige Zeichen im Source. UTF16 benötigt BOM, aber UTF16 ist bei Programmdateien eigentlich niemals notwendig. Das gilt dann auch für alle anderen Template-Dateien in dem Projekt. Bei HTML5 überschreibt der BOM auch alle anderen Encoding Definitionen, zumindest gem. Standard. Das kommt zur Zeit wegen des Doc-Types bei Shopware nicht zur Anwendung. Ein zusammenfassender kurzer Text vom W3C http://www.w3.org/International/questio … order-mark