interface site anders in IE

Status
Niet open voor verdere reacties.

lasseelhobie

Gebruiker
Lid geworden
1 aug 2011
Berichten
6
hallo allemaal

ik heb omdat ik mij verveelde een site gemaakt voor mijn neefje
er is echter één probleem als ik deze in IE open is de interface iets anders dan in andere browsers kan iemand mij zeggen waar de fout zit zodat de interface overal het zelfde is

dat de foto ontbreekt heb ik in alle browsers niets van aantrekken dus


de website kan je hier vinden: http://users.skynet.be/ra017278

thx:rolleyes:
 
Laatst bewerkt:
Hoi hobie,
Html 100% valid, css 100% valid: daar ligt het niet aan! :thumb:
-
De navigatie-balk zit nu in een:
HTML:
...
<td width="700" id="tdnav">
   <ul id="nav">
   ...
Kennelijk is dat net iets te krap voor IE (niet nagegaan waarom precies), en dan duikt in IE het laatste item naar de volgende regel.
Maar je komt er van af door deze rij gewoon helemaal geen breedte te geven: dan krijgt de rij hooguit de breedte van de tabel (1000px), en dat is in orde:
HTML:
...
<td id="tdnav">
   <ul id="nav">
   ...
Met vriendelijke groet,
CSShunter
 
thx

thx css hunter

heb het geprobeerd en het werkt!!!!
de td was te klein voor alle links:

wat doet firefox en ander browsers:de td horizontaal vergroten(wat eigenlijk fout is)
wat doet IE:naar de volgende lijn gaan(wat juist is)
 
Laatst bewerkt:
Hoi Hobie,
't Is niet te zeggen dat Firefox en andere browsers fout zitten, en IE goed.
Ik neig naar het omgekeerde (zoals de ervaring leert)! :d

Verschijnsel even nageplozen. Wat is er aan de hand?
De code is een mengeling van html-opmaak en css-opmaak, wat vaak ongelukkig uitvalt (beter zou zijn om alle opmaak in de css te regelen; en ook om geen tabellen voor opmaak te gebruiken).
  • De tabel-cel waar de <ul> van het menu in zit, heeft een opgegeven breedte van 700px.
  • Maar de tabel zelf, en dus ook de tabel-rij van deze tabel-cel, heeft een opgegeven breedte van 1000px.
  • De tabelrij bestaat dus uit een tabel-cel plus een lege ruimte van 300px ernaast!
  • Oftewel: het is een incomplete tabel, want eigenlijk hoort er een lege cel naast > die dan de resterende 300px ruimte naast de 700px voor zijn rekening kan nemen.
  • Door de incomplete tabel doen alle browsers (ook IE) terecht, alsof de tabel-cel met het menu toch de volle breedte inneemt: de opgegeven breedte wordt genegeerd bij het vaststellen van de werkelijke breedte van de tabel-cel.
  • Het <ul>-lijstje met de menu-items zit binnen de tabel-cel, en erft dus de breedte-eigenschap van die cel.
  • De andere browsers nemen de echte, werkelijk vastgestelde waarde van de tabel-cel als uitgangspunt voor de erfenis: dan krijgt de <ul> dus ook de volle breedte. Dat lijkt me correct!
  • Zo niet Internet Explorer: die hanteert de opgegeven waarde van de tabelcel (de 700px, die in werkelijkheid niet gebruikt wordt) als basis voor de <ul>-breedte, en daardoor past het menu-rijtje er niet meer op. Dat lijkt me incorrect.
Zo is het gekomen. :)
Met wat javascript kan je voor de browser die de pagina bekijkt, precies laten uitrekenen wat de werkelijk gehanteerde breedtes zijn, en checken of het klopt wat ik beweer:
  • Test a, vergelijkt IE en de rest met huidige ontbrekende cel:
    luka-test-a.htm.
    Resultaat: verschil IE en de rest.

  • Test b, vergelijkt IE en de rest met de ontbrekende cel erbij gezet:
    luka-test-b.htm.
    Resultaat: geen verschil IE en de rest, ook de rest duikt nu naar beneden.
Daardoor is het hier de oplossing om de opgegeven breedte van de tabel-cel van de <ul> er gewoon uit te halen.

Met vriendelijke groet,
CSShunter
_________
PS, voor zover je dit niet al van plan was:
Als je een afbeelding (foto) op een webpagina zet, is het wel zo verstandig om in je tekenprogramma die afbeelding precies op de maat te maken die je op de pagina gaat gebruiken. Anders:
  • kan de verhouding hoogte/breedte zoek raken, waardoor vertekening in de foto plaatsvindt (dat is nu het geval);
  • gaat de browser de afbeelding schalen naar het juiste formaat, en dat geeft een stuk mindere kwaliteit dan als je het in een tekenprogramma doet.
Bijkomend voordeel van de afbeelding op ware grootte: minder kB's te downloaden dan als de afbeelding te groot was > prettig snellere pagina!
In de foto op de test-pagina's is dit in orde gebracht, en tevens wat bijgesneden om de kleine vriend wat meer aandacht te geven. Ook nog even de rode oogjes weg-gepimpt. Leuk kereltje!
;)
 
Laatst bewerkt:
thx css hunter

ik heb alle opmaak nu met css gedefinieerd
het idee om zonder tabellen te werken en alleen met css pas ik nu niet toe omdat alles al in een zit maar voor een volgende site zal ik het zeker proberen
 
ik heb nu toch de site met css proberen te maken het probleem is nu ik werk met divs die naast elkaar staan natuurlijk wil ik er ook nog onder elkaar zetten hoe kan ik dat nu doen ???
 
Dan zet je bv. als laatste in het element waar de floats in zitten een "clear"-<div>'je.
Dan komt het volgende element er onder, over de volle breedte.
Met vriendelijke groet,
CSShunter
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan