Avatar billede qurzyx Nybegynder
09. august 2005 - 10:03 Der er 8 kommentarer

Print baggrundsfarve

Hej. HVordan kan jeg får klienter til at printe sidens baggrundsfarver uden at indstille browseren!?

Jeg har oprettet et skema med masser af farver hvor grøn/guul/rød beskriver diverse problemer. Hvis farverne ikke ses så virker skemaet ikke, derfor er det vigtigt med farve-print.
Avatar billede milandt Nybegynder
09. august 2005 - 10:25 #1
i dit stylesheet:

@media print {
 
  td.myclass {background-color:red}

}
Avatar billede milandt Nybegynder
09. august 2005 - 10:29 #2
på denne måde kan du adskille hvilke styles der skal gælde når du "udskriver" til skærmen (default), til en printer (som ovenfor her) eller til skærmlæsere, pda'er osv.

De fleste browsere udskriver ikke baggrundsfarver med mindre man går ind i settings og slår det til. Jeg mener at sider printet fra Opera ser stort set ud som på skærmen, incl baggrundsfarver og billeder.

Ovenstående er også en god måde fx at sætte display:none på elementer du ikke vil have udskrevet på en printer, eller den anden vej rundt.. fx at sætte display:none på en div med en copyright note, og display:blok når den skrives ud til en printer.
Avatar billede roenving Novice
09. august 2005 - 12:28 #3
-- og det rigtige svar på spørgsmålet er: Nej !-)

-- milandts betragtninger er sådan set korrekte, men det ændrer ikke ved, at du skal bede brugeren om at indstille browseren til at udskrive baggrunde ...

-- der findes godt nok activeX-komponenter (f.eks. scriptX fra www.meadroid.com), men de vil som udgangspunkt kun du til IE, jeg tror ikke engang den nødvendige syntaksændring til Gecko-browserne, kan få dem til at virke der ...

-- og jeg ville _aldrig_ takke ja til at få installeret en sådan komponent !o]
Avatar billede milandt Nybegynder
09. august 2005 - 12:42 #4
Undskyld jeg ikke har testet mit svar ordentligt inden jeg postede det. Det virker i Firefox som jeg har beskrevet, men IE udskriver tilsyneladende ikke baggrundsfarver uden at man foretager sig noget som bruger.

Følgende eksemepel virker i FF men ikke i IE, så kan man jo altid diskuttere om det er det rette "svar" eller om svaret bare er "nej!" fordi det ikke lige kan lade sig gøre i IE. Det er i al fald "måden at gøre det på"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html>
<head>
  <title>Untitled</title>
  <style type="text/css">
    @media print {
      div.bgred {background-color:red}
    }
  </style>
</head>

<body>
  <div class="bgred">test</div>
</body>
</html>
Avatar billede roenving Novice
09. august 2005 - 12:47 #5
-- jeg vil ovenikøbet kalde det dårlig programmeringsskik, hvis man introducerer en baggrund på udskrift, som ikke findes på skærmen !-)

-- for der er en hammergod grund til, at browsere ikke udskriver baggrunde, da de sjældent har nogen betydning for en fortolkning af et dokument og _altid_ er hamrende dyre i blæk ...

-- selvfølgelig er der undtagelser, men de er få og små, og så bør farven jo også findes på skærmen !o]
Avatar billede milandt Nybegynder
09. august 2005 - 12:53 #6
i dette tilfælde en undtagelse, idet baggrundsfarverne (hvilke også er på skærmen) giver mening og er afgørende for forståelsen.. så det er ikke dårlig programmeringsskik i dette tilfælde. Men det er da et problem at IE ignorerer de ting man skriver i sit stylesheet.
Avatar billede roenving Novice
09. august 2005 - 13:01 #7
Det er f***** et større problem, at man skal vride armen helt om på IE, hvis man overhovedet vil have den til at forstå css basics ...

-- og et endnu større problem, at den har et så symbiotisk forhold til styresystemt, at der skulle gå næsten et årti før den begyndte at tillade brugere at undgå diverse perverse internetside-koderes mærkelige påfund ...

-- nå, milandt, vi skal jo ikke diskutere qurzyx' behov ud fra vore egne uforgribelige meninger, men jeg vil lige understrege, at jeg synes det er et problem, hvis man i FireFox og Opera kan omgå brugerens indstillinger på det punkt !-)
Avatar billede milandt Nybegynder
09. august 2005 - 13:50 #8
Rigtigt.. for at vende tilbage til qurzyx's problem, så var det måske en bedre løsning ikke at bruge baggrundsfarver som en så vigtig del af forståelsen for et dokument, men i stedet finde en anden måde at adskille sinde celler på. Måske farven på tekst..? farve på en border? I al fald noget man er sikker på skrives ud.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester