.header{display:none;
soll zu.header{display:block;
werden. wie spreche ich aber nun die print.css an?
Über das CSS-DOM kannst du dem eingebundenen Stylesheet dynamisch eine Regel hinzufügen, die eine vorherige überschreibt.
<link rel="stylesheet" id="printstylesheet" href="...">
Das Script dazu würde in etwa so aussehen (ungetestet):
// Link-Element anhand der ID ansprechen
var link = document.getElementById("printstylesheet");
// Das entsprechende Stylesheet-Objekt ansprechen (standardkonform und IE-proprietär)
var ss = link.sheet || link.styleSheet;
// Regel-Liste ansprechen (standardkonform und IE-proprietär)
var rules = ss.rules || ss.cssRules;
// Regel ans Ende der Liste einfügen (standardkonform und IE-proprietär)
if (ss.insertRule) {
ss.insertRule('.header { display: block; }', rules.length);
} else if (ss.addRule) {
ss.addRule('.header', 'display: block');
}
Mathias