Zum Inhalt springen

option split für 2. ul Ebene in Listenmenu

Erstellt am 7. September 2011 · 3 Antworten · letzte Antwort am 12. September 2011

Tags: HTML & CSS, Frage

eberhardt ·

Hallo Forum,

Ich möchte auf einer Startseite gerne jQuery getriebenes SliderMenu realisieren:

dazu folgenden HTML Code per typosktipt realisieren:

    <div id="menuWrapper" class="menuWrapper bg1">
        <ul class="menu" id="menu">
            <li class="bg1" style="background-position:0 0;">
            <a id="bg1" href="#">Seite 01</a>
                <ul class="sub1" style="background-position:0 0;">
                    <li><a href="#">Submenu 1</a></li>
                    <li><a href="#">Submenu 2</a></li>
                    <li><a href="#">Submenu 3</a></li>
                </ul>
            </li>            			
            <li class="bg1" style="background-position:-266px 0px;">
            <a id="bg2" href="#">Seite 02</a>
                <ul class="sub2" style="background-position:-266px 0;">
                    <li><a href="#">Submenu 1</a></li>
                    <li><a href="#">Submenu 2</a></li>
                    <li><a href="#">Submenu 3</a></li>
                </ul>
            </li>
            <li class="last bg1" style="background-position:-532px 0px;">
            <a id="bg3" href="#">Seite 03</a>
                <ul class="sub3" style="background-position:-266px 0;">
                    <li><a href="#">Submenu 1</a></li>
                    <li><a href="#">Submenu 2</a></li>
                    <li><a href="#">Submenu 3</a></li>
                </ul>
            </li>
        </ul>
    </div>

brauche diese unterschiedlichen Klassen bei den ul-Elemente im 2.Level für CSS...
und die kriege ich einfach nicht gebacken. Hier mein TS:

lib.sliderMenu = HMENU
lib.sliderMenu {	
#	entryLevel = 0
	special = directory
	special.value = 1
	excludeUidList = 7 
	stdWrap.outerWrap = <div id="menuWrapper" class="menuWrapper bg1">|</div>
	
	1 = TMENU
	1 {
	   noBlur = 1
	   expAll = 1
	   wrap = <ul class="menu" id="menu">|</ul>

	   NO = 1
	   NO.wrapItemAndSub = <li class="bg1" style="background-position:0 0;">|</li>||<li class="bg1" style="background-position:-266px 0px;">|</li>||<li class="last bg1" style="background-position:-532px 0px;">|</li>
	   NO.ATagParams = id="bg1"||id="bg2"||id="bg3"		           
	}

	2 < .1
	2 {
		wrap = <ul class="sub1" style="background-position:0 0;">|</ul>||<ul class="sub2" style="background-position:-266px 0;">|</ul>||<ul class="sub3" style="background-position:-266px 0;">|</ul>

		NO.wrapItemAndSub = <li>|</li>
		NO.ATagParams =
	}
}

Die OptionSplit-Anweisung greift nicht für 2.wrap=<ul...
Ich weiss: schon einige Einträge deswegen hier im Forum, aber in welche Richtung muss ich weiterdenken? Conditions?
Hat jemand eine Ahnung.

Danke vorab
der Eber

Chrissli ·

Chellas eberhardt,

2 {
  wrap = ....
}
# ist falsch, du brauchst
2 {
  stdWrap.wrap = ...
}

Da liegt der Hund begraben, sonst funktioniert
optionSplit nicht.

eberhardt ·

Hi Chrissli,

sorry, dass ich mich erst jetzt für deinen nützlichen Tipp bedanke!
Das war auf jeden Fall die richtige Richtung, obwohl das bei mir mit OptionSplit für die 2. UL-Ebene trotzdem nicht hinhauen wollte... OptionSplit funktioniert offensichtlich wesentlich nur innerhalb von .NO Statements.....

Habe mir schließlich (ohne optionSplit!) geholfen mit:

stdWrap.dataWrap = <ul class="sub{field:abstract}">|</ul>

und einfach die gewünschte CSS-Klasse in das Beschreibungsfeld der jeweiligen Seite gefüllt (das ich da ohnehin nicht wirklich nutze)

Ich verstehe nicht, warum hier im Forum einige Beiträge die Auffassung äussern, unterschiedliche CSS-Klassen für ul-Tags des gleichen Levels seien sinnlos: Ich fand die jQuery Navigation so cool: http://tympanus.net/Tutorials/BeautifulBackgroundImageNavigation/ und das dazugehörige js wollte halt 3 verschiedene CSS-Klassen...

der Eber

Chrissli ·

Hai Eber,

freut mich das ich helfen konnte.
Obwohl ich mir sicher bin, das der optionSplit nicht zwingen auf NO
angewendet werden muss, hab's ja probiert bevor ich's hier gepostet hab #giggle#

Aber sei's drum, der HTML-Meta Tag"abstract" ist meines Wissens eh etwas outdated.

Prinzipiell kann ich dir aber nur zustimmen:
Solange der W3C-Validator nix zu meckern hat, kann jeder sein UL nennen wie er will.
Es gibt IMHO auch zuviele verschiedene Anwendungsmöglichkeiten für CSS, JS, HTML usw.
um da was prinzipiell zu verteufeln.

BTW: Wenn das Thema gegessen ist, bin ich immer wieder dafür das der Themenersteller unten-rechts
den Haken setzt -gelöst-