Avatar billede md_craig Nybegynder
16. april 2004 - 19:06 Der er 55 kommentarer og
1 løsning

Z-Index problem med Tabeller

Jeg vil lige høre om der er nogen der Dybdegående kan beskreve Z-Index... Da jeg har lidt problemer, som måske kan spores til definitionen af z-index...

Jeg har en side jeg har bygget op af tabeller, og Layers.. (DIV)...

Jeg har så lavet en dropdownmenu, som sådan set virker fint...
Nu ville jeg så til at sætte indholdet op, og nu ligger den sig sQ ind bag det...

  Z-Index skal så vidt jeg ved være højest på det yderste lag... men ellers skulle der ikke være noget...

Spørgsmålet er så, virker z-index evt. KUN på Laysers (Altså Div)
Og hvilke andre ting er der vigtig nævneværdige ???
Avatar billede gil-galad Nybegynder
16. april 2004 - 19:08 #1
Avatar billede md_craig Nybegynder
16. april 2004 - 19:12 #2
Nu er der ikke verdens mest nyttige information der... har også været forbi MS for at prøve at grejde den... :o/

Ved ikke om Tabeller kan gå ind og forstyre ???
Avatar billede md_craig Nybegynder
16. april 2004 - 19:19 #3
Hmmm... Nu har jeg lagt tabellerne ud i Layers...
Og det har løst et af mine andre problemer så det er fint nok...

Men de ligger sig stadig bag ved... :(
Avatar billede gil-galad Nybegynder
16. april 2004 - 19:20 #4
kan man ikke se et eksempel eller noget kode??
Avatar billede md_craig Nybegynder
16. april 2004 - 19:21 #5
Avatar billede md_craig Nybegynder
16. april 2004 - 19:22 #6
bahhh.... det er den her:

http://212.242.200.95/view.aspx
Avatar billede md_craig Nybegynder
16. april 2004 - 19:24 #7
Jeg har jo nogle "under" tables osv... Kan det gå ind og forvire... skal jeg smække en DIV uden om dem evt... ? Kan sQ lige prøve... :(
Avatar billede gil-galad Nybegynder
16. april 2004 - 19:24 #8
ok... Måske skulle du lige teste menuen i mozilla    (selve boksen kommer frem helt oppe i venstre hjørne når man køre musen over fx, udstyr)
Avatar billede md_craig Nybegynder
16. april 2004 - 19:26 #9
Sikkert fordi jeg lige mangler lidt Posistion nogle steder...

Men det er egentlig ikke et Issue her og nu...
Avatar billede roenving Novice
16. april 2004 - 19:26 #10
-- og der er ikke nogen principielle problemer i at bruge z-index på f.eks. tabeller ...

-- eller for den sags udelade det på tabellerne, så skulle z-indexerede elementer komme ovenpå !-)

Dog skal du være opmærksom på, at z-index overhovedet ikke virker medmindre elementerne er absolut positionerede !o]
Avatar billede roenving Novice
16. april 2004 - 19:28 #11
Se f.eks. http://www.w3.org/TR/REC-CSS2/visuren.html#z-index

-- og den siger positionerede elementer, ikke absolut ...
Avatar billede md_craig Nybegynder
16. april 2004 - 19:31 #12
roenving >>>

Øhhh det sidste gav ikke llige mening...
Mine Tabeller samt Div På menuerne er Placeret Absolute, ellers vil de jo ikke rigtig kunne ligge og rode der ude midt i det hele...

De skulle gerne være Placeret i forhold til den Tabel de falder ned fra, altså den overstående TD (Hvilket måske kun virker i IE ?)....
Avatar billede roenving Novice
16. april 2004 - 19:35 #13
Men det er ikke de elementer som er positionerede, som du har givet z-index !-)

Det skal være de elementer, som skal bruge z-indexet, som er positionerede, f.eks.

<td style="width: 252px; padding: 0px; position: relative; left: 0px; top: 0px;">
              <!-- Udelad denne: <div style="z-index: 9;"> -->
                <table class="menuTable" id="menuTable02" cellspacing="0">
                    <tr>
                        <td class="menuTD" style="position: relative; left: 0px; top: 0px;z-index: 9;"><a href="" class="menuA" style="background-image: url(build/silver-menu.gif);" onmouseover="menuShow('Udstyr');setShow('Udstyr');" onmouseout="setShow('');setTimeout('menuHide(\'Udstyr\')',50);">Udstyr</a>
Avatar billede md_craig Nybegynder
16. april 2004 - 19:41 #14
Den du har klippet væk er en jeg har prøvet at smide ind hvis det nu kun virkede på Layers... derfor har jeg prøvet uden den...
  Men så burde det være min Div Hover der skal have en Z-Index som jeg ser det, og det skulle den gerne have gennem sin Style Class...

altså:

_____________________________________________________________________________________
                          <div id="Udstyr" class="menuHoverDIV" onmouseover="menuShow('Udstyr');setShow('Udstyr');" onmouseout="setShow('');menuHide('Udstyr');">                       
                            <table class="menuHoverTable">
                                <tr><td class="menuTD"><a href="" class="menuSecA"><img src="build/silver-menu.gif" style="position: relative; top: 1px; left: 1px;" />&nbsp;&nbsp;Lyd</a></td></tr>
                                <tr><td class="menuTD"><a href="" class="menuSecA"><img src="build/silver-menu.gif" style="position: relative; top: 1px; left: 1px;" />&nbsp;&nbsp;Lys</a></td></tr>
                                <tr><td class="menuTD"><a href="" class="menuSecA"><img src="build/silver-menu.gif" style="position: relative; top: 1px; left: 1px;" />&nbsp;&nbsp;Broer</a></td></tr>
                                <tr><td class="menuTD"><a href="" class="menuSecA"><img src="build/silver-menu.gif" style="position: relative; top: 1px; left: 1px;" />&nbsp;&nbsp;El&nbsp;forsyning</a></td></tr>
                            </table>
                          </div>
Avatar billede md_craig Nybegynder
16. april 2004 - 19:47 #15
Sådan ... den skal åbenbart ligge i min Øverste Tabel... (Bund Niveauet)
Hvilket så nok må konkludere at Tabeller også har noget at sige...

Men så fik jeg sQ løst 2 Problemer med et hug... :)
Avatar billede roenving Novice
16. april 2004 - 19:51 #16
-- og så skulle du måske lige overveje spiffsens kommentar @ 19:24:23, for din positionering virker også for mig kun i IE !-)
Avatar billede md_craig Nybegynder
16. april 2004 - 19:59 #17
Ja... Det ved jeg... Men gætter på det har noget med min Positionerings måde...

Har ladrig kunne få det til at virke i Andet end IE, det med at Placere det ud fra et andet punkt end øverst venstre hjørne...

Som sagt bliver det placeret ud fra Overstående TD, og derfor er Ankerpunktet i IE øverste venste hjørne i henholdsvis:

Udstyr og Priser...

Men kan det lade sig gøre i andet end IE ?
Avatar billede md_craig Nybegynder
16. april 2004 - 20:02 #18
Og i såfald hvordan... :o/
Avatar billede roenving Novice
16. april 2004 - 20:08 #19
Nu er det ikke lige sådan at gennemskue din kode, så jeg har ikke kigget det helt igennem ...

Men selvfølgelig kan det lade sig gøre !-)

Vil se om jeg kan finde en måde at definere det på senere, når jeg får tid ...
Avatar billede md_craig Nybegynder
16. april 2004 - 20:09 #20
ok... ´takker.,, :)
Avatar billede roenving Novice
16. april 2004 - 20:13 #21
-- og jeg blev lidt mystificeret, for jeg havde aldrig hørt om xhtml 1.1 transitional, det er der en god forklaring på:

Den findes ikke !-)

Se engang på: http://validator.w3.org/check?uri=http%3A%2F%2F212.242.200.95%2Fview.aspx
Avatar billede roenving Novice
16. april 2004 - 20:14 #22
Enten html 4.01 Transitional, den let modificerede xhtml 1.0 Transitional, eller også for alvor med xhtml 1.0 strict eller xhtml 1.1 (som _kun_ findes som en slags strict !-)
Avatar billede md_craig Nybegynder
16. april 2004 - 20:34 #23
UPS... :oP...
Har vist bare nuppet en af mine gamle XHTML 1.0 Headere... :oP

Alt det der med Validering er lige noget der kommer lidt senere...
Med mindre nogle af fejlene ligger til grund for mit problem naturligvis...
Avatar billede md_craig Nybegynder
16. april 2004 - 20:45 #24
Sådan... Så skulle der ikke være mere... :)
Avatar billede roenving Novice
16. april 2004 - 20:50 #25
-- men det vil netop ligge til grund for dit problem med IE og andre browsere, da IE vil gå i quirks mode, og dermed ikke vise siden, sådan som du har skrevet i koden, men som en-eller-anden programmør i Bombay synes er fornuftigt ...

Men jeg kigger på positioneringen lidt senere !-)
Avatar billede md_craig Nybegynder
16. april 2004 - 20:55 #26
Har lige prøvet at Ilustrere Tabel opbygningen ned til Menuen... Så godt som muligt...
  Kan ses på: http://212.242.200.95/table.gif
Avatar billede md_craig Nybegynder
16. april 2004 - 20:58 #27
roenving >>> Nu hentyede jeg til de fejl der lå i siden med xHTML 1.1... De manglende Alt tags fx... det er jo en fejl, (også alvorlige i forhold til nogle browsere mener jeg)... men lige et Manglende Alt. Tag har vel ikke indvirkning på det med Position... Det var lige det jeg mente... :o)
Avatar billede roenving Novice
16. april 2004 - 21:13 #28
Og bare for at sikre at vi ikke snakker forbi hinanden:

-- jeg checkede overhovedet ikke, om din side var valid html, jeg registrerede bare, at doctype var ikke-eksisterende, for hvis du bruger doctype og dtd, som ikke virker, går ie i quirks-mode ...

-- og de manglende alt-tags er en ofte overset fejl under kode-skrivningen, men den tager næppe mange sekunder at rette op på, når man checker !-)

-- derimod har quirks-mode en masse med forskellen at gøre, for så bliver det, som skrevet, en tilfældigs opfattelse af, hvordan en webside bør se ud, som styrer, hvordan den vises ...

Det med positioneringen kan have en stribe andre grunde, som jeg ikke er begyndt at forsøge at overskue !o]
Avatar billede md_craig Nybegynder
16. april 2004 - 21:16 #29
Roenving >> Jamen så er vi enige :)... For det er klart at en forkert angivelse, eller manglende af Doctype kan være Fatal... Men nu var det selve fejlene jeg hentyede til... Men det er trods alt lige meget nu, for den er valideret nu... ;oD
Avatar billede olebole Juniormester
16. april 2004 - 21:19 #30
<ole>

Med forkert DTD kan du ikke forvente at få CSS til at fungere i IE ... det har intet med validering at gøre. Validering er for så vidt ligegyldig - men det er DTD'en _absolut_ ikke.

Desuden skal du bruge JavaScript og ikke JScript, hvis menuen overhovedet skal bruges i andet end Win/IE:
  <script src="scripts.js" type="text/Jscript"></script>
skal være:
  <script src="scripts.js" type="text/JavaScript"></script>

/mvh
</bole>
Avatar billede md_craig Nybegynder
16. april 2004 - 22:04 #31
olebole >>>

Det med DTD er jeg som sagt enig i...
Det med JavaScript Vs. JScript er så rettet... ;o)

Men det er vist ikke længere relaterende til mit problem... :o/
Avatar billede olebole Juniormester
16. april 2004 - 22:20 #32
Det er nok fordi, jeg ikke forstår, hvori dit problem ligger - men til gengæld kan se nogle andre  :)
Avatar billede olebole Juniormester
16. april 2004 - 22:38 #33
Hvis problemet stadig er din positionering, undrer det mig, det overhovedet virker i IE ... det burde det ikke.

Når man positionerer et element, gør man det _altid_ i forhold til det første positionerede, omkransende element. Er der ikke et positioneret, omkransende element, vil elementet placere sig i forhold til body-elementet. Prøv:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
</head>
<body>

<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>

<div style="position:relative;width:500px;height:300px;border:1px solid red">
    <div style="position:absolute;left:150px;top:50px;padding:20px;border:1px solid blue">Hej med dig</div>
</div>

</body>
</html>

... og:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>TITLE</title>
</head>
<body>

<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>

<div style="width:500px;height:300px;border:1px solid red">
    <div style="position:absolute;left:150px;top:50px;padding:20px;border:1px solid blue">Hej med dig</div>
</div>

</body>
</html>

... så kan du sikkert se, hvori problemet ligger  :)
/mvh
Avatar billede md_craig Nybegynder
16. april 2004 - 22:41 #34
olebole >>

Det oprindelige problem er løst som sagt...
Envidere er der kommet frem at "dropdown" menuen ligger oppe i Venstre hjørne når man køre musen hen over menuen... Det er i andre Browsere end IE....

Det er mit problem... :o/

Det er altså Browserkompatibiliteten...
Avatar billede md_craig Nybegynder
16. april 2004 - 22:45 #35
olebole >>>

Ja det veil jeg jo også mene... men det er sat helt ned til menuen så vidt jeg kan se... mainTable er sat, samme med TD'erne indeholdende Menuen, menuTable er ligeledes sat og det samme med TD'erne igen...
Avatar billede olebole Juniormester
16. april 2004 - 22:45 #36
Nej, det er som sagt din kode, der bygger på en bug i IE. Det kan man vist ikke kalde et kompatabilitets problem  :)
Avatar billede md_craig Nybegynder
16. april 2004 - 22:48 #37
Jamen så virker det du skriver i [Kommentar: olebole : 16/04-2004 22:38:49]

Jo egentlig ikke, for det er lige hvad jeg gør....
Avatar billede olebole Juniormester
16. april 2004 - 22:48 #38
Njaahh ... det kan jeg godt se ... de er positioneret. Så må du lave en anden fejl  :)
Avatar billede md_craig Nybegynder
16. april 2004 - 22:55 #39
:o/
Avatar billede olebole Juniormester
16. april 2004 - 22:55 #40
Ooops ... ja, der er tydeligvis en hel del CSS-problemer. Du har også ged i bredderne af dine menu-emner ... og har du set den i Opera?  =8-O
Avatar billede olebole Juniormester
16. april 2004 - 22:58 #41
Jeg tror, du skal vælge at lave den, som man plejer - med 'løse' divs, der placeres med faste left- og top-værdier ... eller placeres dynamisk på onmouseover.
Det andet tror jeg kun, du får problemer ud af  :)
/mvh
Avatar billede md_craig Nybegynder
16. april 2004 - 23:15 #42
Olebole >>>

Problemet har været at jeg vil have menuerne "dynamiske" ikke Fast brede...
Og derfor kan jeg ikke rigtig bruge det med Løse Divs og Positionering ud fra det...
Det er der ikke særlig meget dynamik i hvis jeg pluselig omdøber Udstyr til Toiletpapir... som så ikke længere kan stå der og derfor vil udvide menuen...

jeg har kun krav til det skal virke i 2 Browsere og det er NS (7+) og IE 5.5+
Efter som at der ikke længere er mange der bruger de andre Browsere (Ref. TheCounter.com)...

Desuden Ligger de nok uden for målgruppen dem der bruger disse Browsere...
Det ændre dog ikke på at der jo helst ikke skal være fejl i det...

Men finder jeg en anden løsning på det... så kommer den op... :)

Men kigger jeg i koden omkring mine "Menu-Tabeller" vil jeg selv sige det er HELT UDE AT SKIDE... problemet er dog sjovt nok at fjerner jeg den ene tabel der gør at det er der ude... så bliver det bare LORT... :o/...

Og det har jeg sidet og puslet med i lang tid...
Men besluttede mig for lige at ligge det lidt på hylden og vende tilbage på et senere tidspunkt...
Avatar billede md_craig Nybegynder
16. april 2004 - 23:16 #43
olebole >> Desuden er jeg "Design" minded, og ikke "kode" minded, så jeg bliver ved og ved til det ser ud som jeg vil have det... :o)
  Og giver ikke op... For det kan sQ ikke passe at det ikke kan laves... ;o)
Avatar billede md_craig Nybegynder
16. april 2004 - 23:32 #44
Hvad siger den egentlig nu i Operaen ??? Har ikke lige det instalere... Går primært ud fra IE og NS...

Gider ikke have flere Browsere instaleret...
Ved godt jeg brude... men det bliver sQ først når jeg har en 3. Computer... :o)
Avatar billede md_craig Nybegynder
16. april 2004 - 23:35 #45
Har lige afsat lidt flere point så der er lidt til alle de andre Spørgsmål der er kommet under vejs... :)
Avatar billede roenving Novice
17. april 2004 - 01:25 #46
Ha, der måtte lige leges detektiv, men kuren var nu ikke så kompliceret:

.menuHoverDIV
{
    position: relative;
    top: 0px; left: -1px;
    visibility: hidden;
    z-index: 10;
}
Avatar billede md_craig Nybegynder
17. april 2004 - 01:35 #47
Ahhh... okay... troede bare at når man placere relative så ville den udvide tabellen... man må lære noget nyt heletiden...
  Sådan er det... :)

så ser det sQ ud til at lykkedes... Fandeme lækkert... :)
Avatar billede md_craig Nybegynder
17. april 2004 - 01:36 #48
Jeg skal bare lige have kigget de tabeller igennem der ligger i min "dropdown" :)
Avatar billede md_craig Nybegynder
17. april 2004 - 01:44 #49
Så ser det ud som det skal...
Men skal have taget et kig på mit Javascript... Da også det kun virker i IE åbenbart... :/
Avatar billede roenving Novice
17. april 2004 - 02:14 #50
Skal du ikke bare fjerne mouseout på div'en ?-)
Avatar billede md_craig Nybegynder
17. april 2004 - 02:56 #51
Nop.. så vil den jo ikke lukke menuen når man går ud af den med mindre man hopper tilbage i TD'en og ud af den...
  Så det vil ikke lige være en god løsning... :o(

Det virker jo også fint i IE... men det er den blok i mit Script der holder menuen opppe når man går fra "hovedmenuen" til "Undermenuen" der nok er inefektiv i NS.. ?-/ evt... ved det sQ ikke helt, ville være min umiddelbare løsning... :-(

Scriptet ser jo ud som:

// Begin [ dropdownmenu ]
var dom = (document.getElementById)?true:false;
var ie4 = (document.all)?true:false;
var sho = "";

function menuHide(obj)
{
  if(sho == obj)
  {
  }
  else
  {
    if(dom)document.getElementById(obj).style.visibility = 'hidden';
    else if(ie4)document.all[obj].style.visibility = 'hidden';
  }
}

function menuShow(obj)
{
  if(dom)document.getElementById(obj).style.visibility = 'visible';
  else if(ie4)document.all[obj].style.visibility = 'visible';
}

function setShow(obj)
{
    sho = obj;
}
// End [ dropdownmenu ]

sho er en parameter der sørge for at skulle holde menuen oppe hvis den er sat til den menu man står i... :-)
  For da jeg har Delay på min Mouse out i "Hovedmenuen" vil undermenune bare blive skjult efter de 50 millisekunder...
  Også selv om man har aktiveret "mousover" efekten i menuen på Div'en...

Derfor sætter den en parameter som fortæller at menuen altså er aktiv... og det virker jo glimrende i IE.. men hvad der lige sker i NS ved jeg sQ ikke... for der er Mouseouten på "hovedmenuen" herrer... så når man går uden for den TD lukker menuen, selv om Mouseover efekten på Diven burde forhindre den i at komme ind i den blok der lukker menuen igen... :o(
Avatar billede roenving Novice
17. april 2004 - 03:19 #52
Tjah, jeg kan kunstatere, at der næsten aldrig kommer hover/mouseover på div'en eller de a-tags i den -- den må jeg lige kigge lidt nærmere på !-)
Avatar billede md_craig Nybegynder
17. april 2004 - 09:50 #53
Ok... Jeg kan så ikke lige se hvorfor... men men Cutter også menuen på en sjov måde i NS hos mig... Men ved ikke lige hvorfor... og pusler også selv videre...
Avatar billede md_craig Nybegynder
24. april 2004 - 23:16 #54
Nåå... Kan du ikke bare lige oprette et svar, så laver jeg et nyt SPM til det med JavaScriptet... :/
Avatar billede roenving Novice
24. april 2004 - 23:19 #55
Velbekomme '-)
Avatar billede roenving Novice
26. april 2004 - 17:17 #56
-- og tak for points ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester