Jeg har netop haft samme problem, og har tænkt mig, men endnu ikke prøvet, at lægge <form>-en på en <div> for sig, og så sætte passende z-indexer. Måske - jeg skal til det om et par dage! Og ellers lytter jeg med.
Jeg bruger oxo div, om jeg har brugt dem rigtigt kan man jo aldrig vide ?!?
Det jeg ikke forstår hvorfor den nederste txt-form kan gå under, og kun select området går over ???
Jeg har brugt den med at ligge i layers, ligesom Microsoft, ja lad os da bare indrømme det... JEG HUGGEDE DET SGU FRA DEM, og tilrettede det til mit. MEN... Bemærk venligst at mit er centreret på skærmen, og så går den gal i layers når du reszer din browser. Derfor er den ubrugelig...
Du kan ikke gøre det blot ved at lægge dem i en DIV og sætte korrekt z-index.
Hvis det ikke var fordi menuen kun folder sig ned over noget af SELECT boxen, men det hele, kunne du blot have smidt SELECT boxen i en DIV og skjule den DIV.
Nu skal jeg jo til at lave noget kode til dig der ændrer det DIVs clipping area ;)
Ok, pnp. Punkt 1: jeg synes du skal køre din HTML igennem en HTML-checker. Du starter en <table> og afslutter med en </body> inden din egentlige <body>. Det er noget rod (og får netscape til at dø).
Punkt 2: så har du jo ikke formen på en <div>, vel? Lidt svær at se. Lad os lige se hvad Thor skriver.
Men PNP, hvad med at lave en drop down dhtml menu under et std. input felt så det ligner et rigtigt dropdown felt? Så er du ude over det problem og du har en lækker dropdown.
Caledonia: han har sgu da ikke formen på en <div> !
Følgende er noget rod - det er bare til eksperiment:
Det øverste <div> med id gryf er en pop-upcalender. Starter hidden. Der andet <div> med id non2 er egentlig det der stod på siden oprindeligt. Nu har jeg høvlet det ind i en <div> med lavere <z-index>. Og se: popupvinduet kommer ovenpå text-feltet!
Mjello Caledonia (B.B. King?) Tjo det kunne man gøre. Grunden til at det ser ud til at være noget rod jeg har på siden, er at det egentlig er 3 ASP filer... DHTML har jeg ikke rigtig sat mig ind i endnu. ASP kan jeg, men DHTML har jeg ikke haft tiden til endnu...
Jeg afviser lige dit svar, da de 300 point skal gives til en løsning
erik: Det er jo ikke oven på tekst feltet men dropdownfeltet.
Det er på et helt andet nivau man ikke kan snyde sig ud af... En SELECT box er ikke en del af IE canvas'et. Det samme gør sig gældne med (de fleste) andre ActiveX controls.
YAhhhh. Det er sgu lidt trals at have så travlt i hverdagen, at man ikke har tid til det man burde øve sig i. Man burde tage et års orlov, men mit job er for spændende...
<a href="#" onmouseOver="show('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto 100 auto auto)'" onmouseOut="hide('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto auto auto auto)'">Om Bridema</a>
Værdien 100 ved onmouseover kan du selvfølgelig ændre alt efter hvor meget der skal skjules fra højre side af select boxen.
pnp, så skal du blot forøge tallet 100, indtil så meget af select boksen er væk som du vil have ;)
<a href="#" onmouseOver="show('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto 200 auto auto)'" onmouseOut="hide('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto auto auto auto)'">Om Bridema</a>
Nu står der 200, så fjerner den dobbelt så meget ;)
Juster blot tallet selv, indtil du er tilfreds ;)
Forresten, fedt at det virkede, som caledonia selv nævnte var det "umuligt" (hehe) ;)
<div align="left" id="menuOmBridema" onmouseOver="show('menuOmBridemaopen');quickmenuoptions.style.clip = 'rect(auto 200 auto auto)'" onmouseOut="hide('menuOmBridemaopen');quickmenuoptions.style.clip = 'rect(auto auto auto auto)'">
og fjerne det følgende
<a href="#" onmouseOver="show('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto 200 auto auto)'" onmouseOut="hide('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto auto auto auto)'">Om Bridema</a>
Eller rettere, blot fjerne selve onmouseover og onmouseout, så det her
<a href="#" onmouseOver="show('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto 200 auto auto)'" onmouseOut="hide('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto auto auto auto)'">Om Bridema</a>
bliver til det her
<a href="#">Om Bridema</a>
Så vil du stadig have den samme hover effect som du havde før fra stylesheet'et ;)
<div align="left" id="menuOmBridema" onmouseOver="show('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto 200 auto auto)'" onmouseOut="hide('menuOmBridemaopen');document.all.quickmenuoptions.style.clip = 'rect(auto auto auto auto)'">
Bare mig der ville spare lidt plads hvis jeg kunne ;)
Tja, jeg havde faktisk overvejet hvordan man kunne gøre noget ved den "feature" i IE og NS. I IE er det kun SELECT elementer der altid er øverst, i NS er det ALLE form elementer.
Så nu skriver jeg sgu' en lille Javascript API der klarer det for mig, så kan jeg altid bare inkludere den (<script language="Javascript" src="fixFormZIndex.js">)
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.