Gå til innhold

Uønsket scrolling i frames


Anbefalte innlegg

Hei!

 

Driver på med en webside hvor jeg brukes frames. Utifra illustrasjonen ser det sikkert ut som det er iframes, men det er altså helt ordinære frames.

 

Har tekst i main-frame'en. Som dere ser er teksten laaaangt unna å være for bred for vinduet, og det er ikke tabeller eller noe, kun tekst. Hvorfor i all verden vil den absolutt ha scrolling horisontalt? Kun IE som viser det horisontalt, hverken Opera eller Firefox gjør dette.

 

Har prøvd overflow-greiene i CSS, men det gav ingen resultater. I frame-definisjonen definerer jeg scrolling som "auto".

 

Hvordan fjerner jeg den fordømte horisontale scrollingen?? Brukt en time på dette idiotiske problemet nå. :p

 

problem.gif

Lenke til kommentar
Videoannonse
Annonse

Innholdet i framen er bredere enn framen. Derfor får du scroller. Kan også være at det er nøyaktig like bredt, men at du likevel får horisontal scroller fordi framen gjøres mindre av den vertikale scrolleren.

 

Løsning: Ikke bruke frames, men DIV-elementet og CSS-egenskapen "overflow: auto;" ;) (Dette har en rekke andre fordeler, og det er en grunn til at stort sett alle seriøse webdesignere har gått bort fra å bruke frames.)

 

Løsning 2: Gjør innholdet (målsiden) i framen smalere.

Endret av Mikka
Lenke til kommentar
Innholdet i framen er bredere enn framen. Derfor får du scroller. Kan også være at det er nøyaktig like bredt, men at du likevel får horisontal scroller fordi framen gjøres mindre av den vertikale scrolleren.

Nei, det er ikke bredere... hadde tabeller etc. i starten. Prøvde å gjøre disse helt smale, for så å vise dem med "border", og da så man tydelig at tabellene var milevis unnå å være for bred for frame'en.

 

Den teksten som står i frame'en er en dummy-tekst/-fil som jeg laget minimal bare for å være sikker på at problemet i hvert fall ikke kan være at innholdet er for bredt. Men det hjelper altså ikke...

 

Med en gang den vertikale scrollingen kommer (som ønsket), så kommer også den horisontale scrollingen...

 

Rimelig stor side etter hvert dette, og tidspress, så orker nok ikke gjøre det om til css-frames i denne omgang...

 

Noen som har andre løsninger? :whistle:

Lenke til kommentar

Her er forresten koden til siden som skal vises inne i frame'n:

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2002/REC-xhtml1-20020801/DTD/xhtml1-transitional.dtd">
<html>
 <head>
   <title>Lydfabrikken</title>
   <meta name="Author" content="" />
   <meta name="Keywords" content="" />
   <meta name="Description" content="" />
 </head>
 <body>
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
   tekst<br />
 </body>
</html>

Lenke til kommentar

Har funnet synderen da. Og da kom det et lys fra tidligere prosjekter hvor denne har medført nøyaktig samme problem.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2002/REC-xhtml1-20020801/DTD/xhtml1-transitional.dtd">

 

Når jeg fjerner dokumentspesifikasjonen så forsvinner den horisontale scrollingen som ønsket, mens den vertikale fortsatt er der, også som ønsket. :thumbup:

 

Men jævli irriterende da. Koden blir jo ikke gyldig validert uten dokumentspesifikasjon. Hvorfor fatter ikke IE dette, mens Opera og Firefox ikke lager feil utifra dette? Irriterende...

 

Så er fortsatt åpen for løsninger!!

Lenke til kommentar
kanskje det er fordi HTML og BODY er blokkelementer som har 100% bredde? Når den vertikale scrolleren kommer, blir bredden mindre enn 100%.

 

Alle slike problemer hadde du sluppet om du hadde tatt til fornuften og ikke brukt frames =P.

At det blir horisontal scrolling skyldes som sagt ikke <html> eller <body>-tagene, men dokumentspesifikasjonen (under).

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/2002/REC-xhtml1-20020801/DTD/xhtml1-transitional.dtd">

 

Fjernes denne forsvinner den horisontale scrollingen.

 

Litt for mange gamle browsere enda til et det er verdt å gå over til frames-definering i CSS. Dessuten ønsker bestiller av design-oppdraget frames, så da har jeg lite jeg skulle ha sagt.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...