Zum Inhalt springen

Horizontales TMENU - elemente mit fester Breite

Erstellt am 31. Juli 2006 · 3 Antworten · letzte Antwort am 11. Januar 2007

Tags: HTML & CSS, Frage

erdna ·

Hallo - ich bin wieder mal am probieren mit Typo3 und habe ein Problem mit horizontalem TMENU dessen Elemente eine individuell festgelegte Breite haben sollen. Das Menü selbst ist eine <ul> Liste mit horizontal angeordneten <li> Elementen.

Die Elemente habe die folgende Form:

<li id="kontakt" class="act"><a href="#">Kontakt</a></li>
<li id="uber" class="inact"><a href="#">Über uns</a></li>

Die Breite ist im CSS festgelegt:

#kontakt { width: 99px; }
#uber { width: 78px; }

Frage: Wie bekomme ich die Breite in das dynamisch erstellte Menü?
Der normale Weg das <li> Element einfach per wrap einzubinden funktioniert zwar:

lib.menu1 = HMENU
lib.menu1.1 = TMENU
lib.menu1.1 {
NO.allWrap = <li class="inact"> | </li>
NO.stdWrap.htmlSpecialChars = 1
ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = <li class="act"> | </li>
}

Allerdings kann am dabei die id="" Eigenschaft meines Wissens nach nich individuell zuweisen.

NO.allWrap = <li id="?????" class="inact"> | </li>

Natürlich sollte ???? mit der individuellen id ersetzt werden.

Ideen? Danke.
-andre

spL ·

Gibt es denn hierzu eine Lösung irgendwo?

Ich stehe vor dem selben Problem und Benötige dringend ID´s für meine <li>´s, optimal wären die Seitentitel als ID.

lib.menu_2 = HMENU
lib.menu_2 {
  entryLevel = 0
  1 = TMENU
  1 {
       expAll = 0
       noBlur = 1
       
       wrap = <div id="mainnav" class="clear">
       wrap = <ul> | </ul>
       NO.wrapItemAndSub = <li>|</li>
        
}
erdna ·

Ich hab's dann so gemacht:

Alias zu id setzen und den folgenden code.

lib.menu1 = HMENU
# First level menu-object, textual
lib.menu1.1 = TMENU
lib.menu1.1 {
NO.stdWrap.htmlSpecialChars = 1
NO.allWrap = <li id="{field:alias}" class="inact"> | </li>
NO.allStdWrap.insertData = 1
ACT = 1
ACT.stdWrap.htmlSpecialChars = 1
ACT.allWrap = <li id="{field:alias}" class="act"> | </li>
ACT.allStdWrap.insertData = 1

Bin mir nicht mehr sicher ob das selbst gebaut war oder ob ich das irgendwo gefunden habe

spL ·

FETTEN DANK AUCH VON DER ANKI!!

habs so gelöst:

lib.menu_2 = HMENU
lib.menu_2 {
  entryLevel = 0
  1 = TMENU
  1 {
expAll = 0
noBlur = 1
wrap = <div id="mainnav" class="clear">
wrap = <ul> | </ul>
#NO.stdWrap.htmlSpecialChars = 1
NO.wrapItemAndSub = <li> | </li>
NO.ATagParams = id="id{field:uid}"
NO.allStdWrap.insertData = 1
}