Just nu i M3-nätverket
Gå till innehåll

"eliminera höjden av en br-tag i en meny"???


odishon

Rekommendera Poster

Har en Meny.. den skall ha igrunden

 

[+] Navigation 1

------------------------

Navigation 2

------------------------

Navigation 3

... etc. Om menyn är expanderbar så sätts en twisty in som bild, annars är det blankt.

 

DOM elementet för navigationen som genereras styrs av

 

var tocClass = (bIsSelected ? 'tocSelected-bg' : 'toc-bg') + (bIsFolder ? ' dropTarget' : '');
var tocTitle = (bIsFolder ? 'folder' : '');

// Now create the DOM element itself:
var tocItem = document.createElement("div");
tocItem.id = (bIsFolder ? sysName : '');
	tocItem.className = tocClass;
	tocItem.style.display = "block";
tocItem.style.width = "144px";
tocItem.title = tocTitle;
tocItem.setAttribute("unid", unid);
tocItem.setAttribute("level", level);

 

Sen sätter jag en delimiter för att skapa linjen under navigationselementet och gör det på ett hederligt sätt:

 

var delimiter = '<br /><img src="/qphtml/html/common/transparent.gif" width=1 height=1 border=0 alt="" class=tocDelimiter><br />'

tocItem.innerHTML = twisty + anchor + delimiter;

 

Där klassen styr bredden. Lite CSS på tocSelected-bg och toc-bg för att formatera text etc.

 

I FF ser det bra ut.. browsern "kollapsar" radbrytningen på delimiter och visar det tajt. I IE så syns radbrytningen och kör menyn för "luftig".

 

Kan INTE slå på border-style på tocSelected-bg eller toc-bg eftersom objektet används på ett annat ställer där det INTE ska vara ett linjer under. Samma kod styr på 2 ställen så jag måste använda ett externt sätt att skapa linjen. Men nån idé om hur man får bort "luften" i IE.. i radbrytningarna??? Om jag INTE har en radbrytning får jag

Navigationselement--------------------

Navigationselement--------------------

etc.

 

[inlägget ändrat 2008-11-10 15:14:45 av odishon]

[inlägget ändrat 2008-11-10 15:15:06 av odishon]

Länk till kommentar
Dela på andra webbplatser

Ett förslag:

 

Sätt en class på delimiterbilden och i css sätt classen till ett blockelement.

Ta bort radbrytningar.

 

Länk till kommentar
Dela på andra webbplatser

thx!

 

Bara några små justeringar och display:block funkade perfa!

Hur *** kunde man inte komma på det själv??

 

Tack!

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...