Salut !

Pour imprimer une page, j'ouvre une nouvelle fen�tre dans laquelle j'importe le code HTML et CSS � imprimer depuis la fen�tre m�re (par clonage de n�ud).

Le probl�me, c'est que IE semble refuser de modifier le contenu de la balises head du popup lorsque cette modification est effectu�e par un script de la fen�tre m�re.

Un peu de code pour aider :

page contenant les donn�es � imprimer:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Document sans nom</title>
 
		<link type="text/css" rel="stylesheet" href="print.css" />
		<script type="text/javascript" src="print.js"></script>
	</head>
 
	<body>
		<div id="print">Hello World à imprimer</div>
		<div>Hello World à ne pas imprimer</div>
	</body>
</html>
CSS associ� :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
div{
	font-size:1.5em;
	font-weight:bold;
	text-align:center;
}
 
div#print:hover{
	cursor:pointer;
}
le javascript (sp�cifique � IE, histoire de faciliter la lecture) :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var print=function(){		
	var printWindow=window.open('printBase.html');
 
	var css=document.getElementsByTagName('link')[0].cloneNode(true);
	var html=document.getElementsByTagName('div')[0].cloneNode(true);
 
	var addNode=function(newCss, newHtml){
		printWindow.document.documentElement.firstChild.innerHTML+=newCss.outerHTML;
		printWindow.document.documentElement.lastChild.innerHTML+=newHtml.outerHTML;
	}
 
	printWindow.attachEvent('onload', function(){addNode(css, html)});
}
 
var init=function(){	
	document.getElementById('print').attachEvent('onclick', print);
}
 
window.attachEvent('onload', init);
et la page servant de base � l'impression :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Document sans nom</title>
	</head>
 
	<body>
	</body>
</html>
Accessoirement, si quelqu'un sait comment modifier le doctype d'une page, �a m'�viterais de devoir faire appel � ce dernier fichier.


Donc voil�, si quelqu'un a une id�e pour forcer IE ajouter cette balise link dans le head du popup, je suis preneur