Zum Inhalt springen

Bei mainMenu reagiert mainMenu.2 nicht ?!

Erstellt am 29. November 2010 · 3 Antworten · letzte Antwort am 30. November 2010

Tags: Frage

Niha ·

Hallo,

ich bin noch ein "relativer Anfänger" was Typo3 angeht und stehe gerade vor einer Sache die mir etwas Kopfzerbrechen verschafft.

Ich habe eine Navigation erstellt bei der ein "Submenu" erscheinen soll,
sobald ich über die Menü Punkte fahre.

Zusehen ist die Seite hier (gemappt in Typo3):
http://www.secondsolarcentury.com/index.php?id=71

Wenn ich nun wie gesagt z.b. über den Menü Punkt "Unternehmen" fahre,
sollte eigentlich nach oben das Submenü erscheinen. Dies passiert allerdings nur wenn ich auf "Unternehmen" klicke und dann auch nicht wirklich so wie es eigentlich Formatiert ist.

Damit ich nicht falsch verstanden werde hier mal meine
normale HTML Seite in der alles Funktioniert:
http://www.secondsolarcentury.com/fileadmin/templates/index.html

Nun zu meinem Aufbau:

HTML Code:

<!-- NAVIGATION ! +ANFANG+ -->
            <div id="navigation">
                <ul id="navigation">
                    <li><a href="#">UNTERNEHMEN</a>
                      <ul class="sub_navigation">
                        <li><a href="#">Forschung</a></li>
                        <li><a href="#">Über Uns</a></li>
                      </ul>
                    </li>
                    <li><a href="#">MODULE</a></li>
                    <li><a href="#">INVESTOREN</a></li>
                    <li><a href="#">JOBS</a></li>
                    <li><a href="#">KONTAKT</a>
                      <ul class="sub_navigation">
                        <li><a href="#">Lieferanten</a></li>
                        <li><a href="#">Journalisten</a></li>
                      </ul>
                    </li>
                  </ul>
            </div>
<!-- NAVIGATION ! +ENDE+ -->

Und hier mein TS für das mainMenu:

## Menu [Begin]
lib.mainMenu = HMENU
lib.mainMenu.entryLevel = 0
lib.mainMenu.excludeUidList = 101,100,99,95,96,97,98
lib.mainMenu.1 = TMENU
lib.mainMenu.1.NO {
    allWrap = <li>|</li>
}
    
lib.mainMenu.1.ACT = 1
lib.mainMenu.1.ACT {
    allWrap = <li class="current_page_item">|</li>
}



lib.mainMenu.2 = TMENU
lib.mainMenu.2.NO {
  allWrap = <ul class="sub_navigation"><li>|</li></ul> 
}

## Menu [End]

Bei dem Mapping habe ich die <ul id="navigation"> gemappt und auf "INNER" gesetzt.

Wäre super wenn mir jemand weiter helfen kann.

Viele Grüße
Niha

Niha ·

Ok, das Problem scheint sich gelöst zuhaben.
Ich habe mich hier und in anderen Foren nochmal genau umgesehen und dann dies hier gefunden:

### Menü ###
lib.mainMenu = HMENU
lib.mainMenu.excludeUidList = 101,100,99,95,96,97,98
lib.mainMenu {
	# entryLevel anpassen:  
	entryLevel = 0
	1 = TMENU
	1 {
		noBlur = 1
		wrap = <ul id="navigation">|</ul>
		expAll = 1
		NO = 1
		NO.ATagTitle.field = description // subtitle
		NO.wrapItemAndSub = <li>|</li>    
		ACT < .NO
		ACT.wrapItemAndSub = <li class="current_page_item">|</li>
		}
	2 < .1
	2.wrap = <ul class="sub_navigation">|</ul>
}

Was mich allerdings (wie vorher auch) immernoch wundert, ist das er das Menü soweit unten setzt und nicht so wie in der eigentlichen HTML/CSS.

Weiß jemand woran das liegt?

Viele Grüße
Niha

etux ·
Niha schrieb

Was mich allerdings (wie vorher auch) immernoch wundert, ist das er das Menü soweit unten setzt und nicht so wie in der eigentlichen HTML/CSS.

Ich weiß nicht, was Du damit meinst – der Link zur html-Vorlage ist tot. Kein Vergleich möglich.

Grundsätzlich:
Dein DOCTYPE passt zum Quellcode nicht.
Ein CSS-Reset fehlt.
Du setzest massenhaft „absolute“ Positionierung und Höhenangaben.
Die Floats werden meist nicht eingeschlossen.

Außer für die zweite Ebene der Navigation, ist „absolute“ Positionierung nirgendwo in Deinem Layout notwendig. Die „position: relative;“ bei den Listenelementen der ersten Ebene kannst Du auch erst bei „:hover“ auf die selbigen setzen.
Die Hauptnavi hat das UL-Element doppelt..

Höhenangaben sind in einem Layout nur äußerst selten notwendig, und bei dynamischen Inhalt (Text) sogar schädlich.

Dass die Floats nicht eingeschlossen werden, siehst Du vielleicht deshalb nicht, weil es die Höhenangaben kaschieren.