30. september 2004 - 13:46Der er
12 kommentarer og 1 løsning
vertical dropdown menu
Er der nogen der kan hjælpe mig med den her dropdown menu.
Mit problem er at den benytter sig af <UL> og <LI>, hvilket konflikter med andre elementer på siden der også benytter <UL> og <li> (hvor det er meningen at de skal bruge standard liste funktionen, altså en bulletlist).
Så hvis der er nogen der kan komme med en løsning til hvordan jeg kommer uden om at skulle bruge <UL> og <LI> i denne menu (erstatte disse med andre tags?) er der points.
.invisible { MARGIN-TOP: -15px; /*rykker drop-ud menuen op eller ned, jo større plus ned, jo større minus op*/ MARGIN-LEFT: 130px;/*rykker drop-ud menuen ud til højre*/ POSITION: absolute; DISPLAY: none; }
LI A { padding: 2px 2px 2px 2px; FONT-FAMILY: Verdana, Arial, Sans-Serif; FONT-WEIGHT: bold; FONT-SIZE: 12px; WIDTH: 100%; COLOR: #000000; TEXT-DECORATION: none; } .submenu { PADDING-RIGHT: 5px; PADDING-LEFT: 20px;/*rykker teksten i drop-ud menuen til højre*/ PADDING-BOTTOM: 2px; PADDING-TOP: 10px;/*afstanden mellem top og punkter samt mellem menu punkterne, kan også bruge line-height*/ TEXT-DECORATION: none; text-align: left; FONT-FAMILY: Verdana, Arial, Sans-Serif; FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #000000; WIDTH: 100%; BACKGROUND-COLOR: #F4F2E6; /*baggrundsfarven på den uddroppede menu*/ /*Gør dropout menuen gennemsigtig*/ position: relative; z-index:1000; filter: alpha(opacity=90); /*Gør dropout menuen gennemsigtig slut*/
Kunne du ikke linke til et eksempel, som det ser ud i browseren, for det er umuligt at forholde sig til en asp-struktur, hvor html'en ikke er genereret ...
-- og umiddelbart tror jeg, vi kan finde en løsning baseret på at sætte et id på parent-elementet til menuen !-)
Muy bueno, der var nogle detaljer, jeg var usikker på, men så kan du:
I stylesheetet:
Brug #menuholder li og # menuholder ul i stedet for LI og UL til menu-properties (og det gælder også de steder, hvor li er efterfulgt af a, f.eks. #menuholder li a{} !-)
roenving: Thanks:-) Men der er et mindre problem. Alle undermenuerne starter med at være synlige og forsvinder først når man har kørt hen over hovedmenupunkterne med musen først. Og så er borderkanten blevet synlig på menuholder tabellen selv om den står til border=0. Nogen idéer til en løsning?
.invisible { MARGIN-TOP: -15px; /*rykker drop-ud menuen op eller ned, jo større plus ned, jo større minus op*/ MARGIN-LEFT: 130px;/*rykker drop-ud menuen ud til højre*/ POSITION: absolute; DISPLAY: none; }
#menuholder LI A { padding: 2px 2px 2px 2px; FONT-FAMILY: Verdana, Arial, Sans-Serif; FONT-WEIGHT: bold; FONT-SIZE: 12px; WIDTH: 100%; COLOR: #000000; TEXT-DECORATION: none; } .submenu { PADDING-RIGHT: 5px; PADDING-LEFT: 20px;/*rykker teksten i drop-ud menuen til højre*/ PADDING-BOTTOM: 2px; PADDING-TOP: 10px;/*afstanden mellem top og punkter samt mellem menu punkterne, kan også bruge line-height*/ TEXT-DECORATION: none; text-align: left; FONT-FAMILY: Verdana, Arial, Sans-Serif; FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #000000; WIDTH: 100%; BACKGROUND-COLOR: #F4F2E6; /*baggrundsfarven på den uddroppede menu*/ /*Gør dropout menuen gennemsigtig*/ position: relative; z-index:1000; filter: alpha(opacity=90); /*Gør dropout menuen gennemsigtig slut*/
</UL> </td> </tr> </table> </NOINDEX> <script language="javascript"> function showSubMenu() { var objThis = this;
for(var i = 0; i < objThis.childNodes.length; i++) {
if(objThis.childNodes.item(i).nodeName == "UL") { // only show block if there are items if (objThis.childNodes.item(i).innerHTML!="") { objThis.childNodes.item(i).style.display = "block"; } } } }
function hideSubMenu() { var objThis = this;
for(var i = 0; i < objThis.childNodes.length; i++) { if(objThis.childNodes.item(i).nodeName == "UL") { objThis.childNodes.item(i).style.display = "none"; return; } } }
function initialiseMenu() { var objLICollection = document.getElementById('menuholder').getElementsByTagName("LI");
for(var i = 0; i < objLICollection.length; i++) { var objLI = objLICollection[i]; for(var j = 0; j < objLI.childNodes.length; j++) {
Mit problem er at alle undermenuer bliver vist fra start, og det skal de ikke. Gør jeg som roenving skriver her til sidst, forsvinder hele menuen bare - og det skal den heller ikke. Nogen der kan se hvad jeg skal skrive?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.