butterbreeze: Listen-Abstände für Menü in IE

Hallo, vielleicht kann jemand bei meinem Dilemma weiterhelfen ...

Ich habe das folgende Menü erstellt, welches aus Raw-HTML Beiträgen über Typo3 "befüllt"/gepflegt wird:

Beispiel: Malerei

Der HTML-Code ist bis inklusive des Tags <ul></ul> statisch als Vorlage integriert, über T3 werden die Listenelemente incl. Anker als pures HTML eingepflegt - beispielsweise:

<li><a href="index.php?id=50" title="Madonnen 21"><span>Madonnen 21</span>2006</a></li>

Der damit generierte Quelltext sieht anschliessend aus wie folgt:

<!--  CONTENT ELEMENT, uid:103/html [begin] -->  
  <a id="c103"></a>  
<!--  Raw HTML content: [begin] -->  
  <li><a href="index.php?id=52" title="Georgskapelle"><span>Georgskapelle</span>2007</a></li>  
<!--  Raw HTML content: [end] -->  
<!--  CONTENT ELEMENT, uid:103/html [end] -->  
<!--  CONTENT ELEMENT, uid:104/html [begin] -->  
  <a id="c104"></a>  
<!--  Raw HTML content: [begin] -->  
  <li><a href="index.php?id=50" title="Madonnen 21"><span>Madonnen 21</span>2006</a></li>  
  <!--  Raw HTML content: [end] -->  
<!--  CONTENT ELEMENT, uid:104/html [end] -->

Typo3 fügt also vor jeden Eintrag zusätzliche Tags im Stil <a id=xyz></a> ...

In Firefox, Safari und Opera sieht das Ganze gut aus - in IE6&7 jedoch fallen die Item-Abstände zu gross aus ... ich denke, das wird an den zusätzlich generierten a-Tags liegen, denn in vollständig statischer Form hat der IE kein Problem mit der Darstellung dieser Menü-Methode.

Hat jemand eine Idee, ob das des Problems Ursache ist, und wie man hier Abhelfen kann?

Der Vollständigkeit halber hier noch der relevante CSS-Teil:

#content_list_menu {  
 font-size: 12px;  
 line-height: 12px;  
}  
#content_list_menu ul {  
 list-style: none;  
 margin: 0;  
 padding: 0;  
}  
#content_list_menu li {  
 list-style: none;  
 margin: 0;  
 padding: 0;  
 clear: left;  
 min-height: 1px;  
}  
#content_list_menu ul li a {  
 display: block;  
 color: #000;  
 padding: 4px 0 8px 24px;  
 margin: 0 0 12px 0;  
 text-decoration: none;  
}  
#content_list_menu ul li a:hover {  
 background: #b5b9a4 url(../images/elements/content_list_bg_select.gif);  
}  
#content_list_menu ul li a span {  
 float: left;  
 width: 252px;  
}

Einen schönen Sonntag noch ;D

  1. Hi,

    Typo3 fügt also vor jeden Eintrag zusätzliche Tags im Stil <a id=xyz></a> ...

    dann repariere Typo3 oder ersetze es durch etwas Sinnvolles. Erstens ist es absolut blödsinnig, ein der Verlinkung von Ressourcen dienendes Element einzusetzen, ohne die URL der Ressource anzugeben; und zweitens ist der erzeugte Code invalide. Nicht mal einem IE ist es vorzuwerfen, wenn die Darstellung oder irgend etwas anderes anschließend nicht stimmt.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Typo3 fügt also vor jeden Eintrag zusätzliche Tags im Stil <a id=xyz></a> ...

      nein typo3 tut das vor jedem content-element automatisch - aber nicht zwischen listenelementen wenn man als content-element zb bulletlist verwendet ich würde mal vorschlagen, sich mit den objekte HMENU und TMENU zu beschäftigten, wenn man ein menü machen möchte, der ctype "html" ist für diesen zweck nicht geeignet - ist ja klar, wenn man mehrere elemente macht, dass dann vor jedes element ein zusätzliches <a /> gesetzt wird - aber das ist doch etwas irre (zudem erzeugt das in der datenbank massivst overhead)

      dann repariere Typo3 oder ersetze es durch etwas Sinnvolles.

      den der code wird so nicht von typo3 produziert - hier wird klartext html eingefügt vom seitenautor ;) der typo3-code ist zwar schwachsinn, aber nicht invalide (zumindest xhtml 1.0 transitional)

      ich würde nicht "repariere typo3" vorschlagen sondern "bediene es richtig"

      1. ich würde nicht "repariere typo3" vorschlagen sondern "bediene es richtig"

        ja, mir ist bewusst, dass diese lösung nicht dem menü-konzept von typo3 entspricht. hmenu & tmenu hatte ich bereits eingesetzt, allerdings konnte ich so nur seiten-titel als menü-inhalte nutzen und folgende konventionen nicht berücksichtigen:

        --> die menü-einträge sollen sich aus den 2 komponenten (s.o.) projektname (in anderer formulierung als jeweiliger seitentitel) und jahr zusammensetzen

        ge-wrapt soll das ergebnis (s.o.) wie folgendes beispiel aussehen:

        <li><a href="index.php?id=52" title="Georgskapelle"><span>Georgskapelle</span>2007</a></li>

        für hmenu/tmenu habe ich keine lösung gefunden, welche mich die 2 komponenten in dieser form nutzen lassen könnte. darum die improvisierte lösung ...

        1. für hmenu/tmenu habe ich keine lösung gefunden, welche mich die 2 komponenten in dieser form nutzen lassen könnte. darum die improvisierte lösung ...

          das liegt daran, dass 90% der typo3-doku gelinde gesagt müll ist ;) es gibt aber für quasi alles eine möglichkeit

          was hältst du vom feld nav_title? hier kannst du für die navigation einen eigenen titel definieren - anstatt ein menu hardcodiert zu verfassen ist es 10x einfacher vor jeden navigationstitel händisch etwas zusammenbauen

          ggf interessiert dich NO.before um vor der ausgabe des eigentlichen menüpunkts etwas hinzuzufügen - hier kannst du problemlos als COA irgendwas davor setzen, ob das der titel der seite ist, der titel einer x-beliebiten seite, ein text, eine grafik, 10 content elemente oder sonstwas ist egal

          NO.before.cObject = COA
          NO.before.cObject.10 = TEXT
          NO.before.cObject.10.value = ausserhalb des wraps des menupunkts

          in das <a />-element hinein kommst du übrigens mit
          NO.ATagParams.stdWrap.cObject

          damit kannst du auch wieder beliebige dinge reinpacken

          selbriges funktioniert übrigens für alle anderen menuzüstände auch (ACT, CUR, usw)