Positie van een menu in Explorer en Mozilla

Pagina: 1
Acties:

  • Icheb
  • Registratie: Augustus 2001
  • Laatst online: 12-05 18:12
Ik ben op bezig aan een update van een site, maar ik loop al geruime tijd tegen een leuk probleempje aan.
Voor Internet Explorer heb ik het op kunnen lossen door ervoor te zorgen dat de JavaScript code, waarin het menu gemaakt is, in een <div> staat zodat het allemaal op de goeie plaats staat, en blijft staan.
Voor Mozilla heb ik het heel anders aan moeten pakken, maar deze aanpak wilt niet echt lukken.
Een stuk van de code :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<table width="750" cellspacing="1" cellpadding="0" border="0" align="center" style="background-color: #000000;">
<tr style="background-color: #b0c4de;">
    <?PHP
    if (browser_is_netscape()==true){
        echo '<td colspan="6" align="center">[img]"images/header.jpg"[/img]';
        echo "<div align='left' style=\"position: fixed;\"><script type=\"text/javascript\" language=\"javascript1.2\" src=\"resources/menu.js\"></script></div></td>";} 
    else {
        echo '<td colspan="6" align="center">[img]"images/header.jpg"[/img]</td>';
    }
    ?>
</tr>
<tr style="background-color: #b0c4de;">
    <td width="750" align="left" height="20"><?PHP

if (browser_is_netscape()!=true) { echo "<div align='left' style=\"position: absolute;\"><script type=\"text/javascript\" language=\"javascript1.2\" src=\"resources/menu.js\"></script></div>";} else { }
?>

    </td>


Ik heb in PHP een paar functies die kijken of een browser Internet explorer of iets anders is. Als de browser niet explorer is, pakt hij automatisch dus het bovenste stukje (de naamgeving van de functie is niet optimaal).

In Mozilla is het zo dat het menu goed geplaatst wordt, maar als er gescrolled wordt door de pagina gaat meebewegen, terwijl de bedoeling is dat hij op die plaatst, waar hij in het begin geplaatst is blijft staan...

Ik heb inmiddels geen idee meer hoe ik dit kan doen, kan iemand mij hiermee helpen ?
(Ik ben niet zo'n CSS en JavaScript held... |:( )

Het spijt me dat ik gelijk in de topic start het design vernuek...

sebsoft.nl


  • Johnny
  • Registratie: December 2001
  • Laatst online: 27-05 16:10

Johnny

ondergewaardeerde internetguru

Je code is een troep.

Ik denk dat probleem is dat je met een tabel werkt die gewoon in de pagina staat, en dan wil je enkele cellen hebben die stilstaan, maar dat werkt natuurlijk niet.

Oplossing:

Geen tabellen gebruiken voor de opmaak.

[ Voor 80% gewijzigd door Johnny op 25-01-2004 16:01 ]

Aan de inhoud van de bovenstaande tekst kunnen geen rechten worden ontleend, tenzij dit expliciet in dit bericht is verwoord.


  • chris
  • Registratie: September 2001
  • Laatst online: 11-03-2022
Kijk eens naar dat "position: fixed" en z-index enzo :)

[ Voor 27% gewijzigd door chris op 25-01-2004 16:21 ]


  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 21-02 23:50
off-topic:

[code]if (browser_is_netscape()==true)[/code]

Als je functie true returnt hoef je geen ==true vergelijking te maken. Hij retourneert immers al true. Dus

[code]if (browser_is_netscape())[/code] is al voldoende

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

De grote vraag is natuurlijk: hoe bepaal je of je met netscape (of mozilla, of firebird, of opera, of konquerer, of safari of elke andere browser die position:fixed wel ondersteund) te maken hebt? Aan de hand van de userAgent string? Dan wens ik je veel succes met het up-to-date houden van de tabel waar al die UA's in staan ;)
Bottomline is dat op dit moment enkel oude browsers en IE zo'n beetje geen position:fixed ondersteunen, het lijkt me dan ook eenvoudiger om te kijken of je met IE te maken hebt...

[ Voor 10% gewijzigd door crisp op 25-01-2004 21:29 ]

Intentionally left blank