Bonjour,
je viens de constater un problème de comportement de Dompdf quand on utilise Flex.
J'ai utilisé un exemple tout simple trouvé sur le net Ci-dessus l'exemple qui marche sans Dompdf :
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 <html> <head> <meta charset='utf-8'> <title>Document sans titre</title> <link href='style_2.css' rel='stylesheet' type='text/css'> </head> <body> <!-- notre menu flexbox --> <div id="conteneur"> <div class="element">Elément 1</div> <div class="element">Elément 2</div> <div class="element">Elément 3</div> </div> <!-- /notre menu flexbox --> </body> </html>
Dans le navigateur que ce soit Mozilla ou IE j'ai bien les trois zones l'une en dessous de l'autre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 .element { margin: 0px; padding: 0px; background: tomato; list-style:none; } #conteneur { display: flex; }
Lorsque je veux converir cette simple page avec Dompdf :
A l'affichage je vois clairement que les 3 zones se superposent C'est clair quand je supprime l'appel à la classe élément. Quelqu'une sait t'il s'il y une solution à ce problème?
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 <?php require_once '../dompdf/autoload.inc.php'; use Dompdf\Dompdf; // Déclenche la temporisation de sortie (syntaxe >= php 5.4) ob_start(null, 0, PHP_OUTPUT_HANDLER_REMOVABLE); // Récupère le tampon $content_html = ob_get_contents(); // Efface le tampon ob_end_clean(); // Instantiate and use the dompdf class $dompdf = new Dompdf(); $dompdf->set_paper("a4", "portrait"); $content_html = <<<'ENDHTML' <html> <head> <meta charset='utf-8'> <title>Document sans titre</title> <link href='style_2.css' rel='stylesheet' type='text/css'> </head> <body> <!-- notre menu flexbox --> <div id="conteneur"> <div class="element">Elément 1</div> <div class="element">Elément 2</div> <div class="element">Elément 3</div> </div> <!-- /notre menu flexbox --> </body> </html> ENDHTML; $dompdf->load_html($content_html); // Render the HTML as PDF $dompdf->render(); $dompdf->stream("menu.pdf"); ?>
Merci
Partager