Niels Gamborgs online notesbog

Problemer med print i Internet Explorer

marts 2nd, 2009. Kategori: Webudvikling

Internet Explorer 7 kan have problemer med at udprinte komplekse sider med mange div-tags, floats og clears. En almindelig fejl er, at layoutet bliver ødelagt ved at elementer placeres forkert. Explorer kan nemlig ikke placere de floatede elementer korrekt.

Problemer og fejl ved udskriften viser sig både i InternetExplorer 7 og den gamle IE6, hvorimod browsere som Firefox og Opera ofte håndter komplekse sider bedre end IE.

Et hurtigt kig med “vis udskrift” kan vise eventuelle fejl med printet: 

  • Div-tags bliver ikke printet eller printet vist forkert
  • Der kan opstå mærkelige fejl med sidedelinger, halvtomme sider
  • Indhold der ikke kommer på udskriften
  • Andre fejl med placeringer af elementer på siden
  • Sidetallet i “vis udskrift” løber løbsk, i noget der ligner en evig løkke
  • Internet Explorer kan låse og svarer ikke

Løsningen

Løsningen er at lave et specielt stylesheet til print. (Og ofte også et specielt print-stylesheet til IE, da en løsning for IE, kan ødelægge Firefox rendering af udskriften)

Da det ofte er komplekse div og floats, der er årsag til problemerne, er løsningen at fjerne dem. Alle elementer, der ikke er nødvendige på den printede side fjernes med “display:none”. Det kan f.eks., være bannere, login knapper, etc

Bagefter fjernes så mange floats, som muligt fra både div’er og andre floatede elementer med: “float: none”. Metoden er at prøve sig frem. Fjerne en float af gangen, og se hvad der sker.

#header,
#banner,
#login,
#footer {
      display:none;
}

#main,
#left,
.row,
.line {
      float:none;
}

Det kan være svært at finde præcis de elementer, der ødelægger hele udskriften. Så tålmodighed er nødvendig, og en vis overbærenhed med Internet Explorer kan og´så være gavnlig …   ****’ing  !*û`^!!*  😉

  1. 2 Responses to “Problemer med print i Internet Explorer”

  2. By Michael Østergaard on mar 2, 2009

    Hej Niels

    Som altid en god artikkel, og den tager fat i et rigtigt vigtigt område. Mange sider er slet ikke optimeret til print – OVERHOVEDET!

    Jeg plejer somregel at lave et print-stylesheet, hvor jeg simpelthen skærer alt det fra, som ikke skal med. Det betyder, at brugerne kun printer overskrfter og indhold.

    Det bør som sådan slet ikke være nødvendigt, at et website åbner et nyt vindue, når der skal printes. Alligevel kan jeg godt lide måden, som det fungerer på i Dynamicweb. Der åbner det godt nok et nyt vindue, men man kan nemmere style udskriften til. Dette skyldes, at man tilrette sin en template, der bruges til udskrift.

  3. By Jacob Leander Christensen on mar 2, 2009

    Når vi er inde på “print området” vil jeg også lige pointere at man skal passe på med duplicate content, (søgemaskineoptimering) når man har en printfunktion på ens webside.

Skriv en kommentar