Ejemplo n.º 1
0
 /**
  * @test
  */
 public function emogrifyAfterDisableInvisibleNodeRemovalPreservesInvisibleElements()
 {
     $css = 'div.foo { display: none; }';
     $html = $this->html5DocumentType . '<html><body><div class="bar"></div><div class="foo"></div></body></html>';
     $this->subject->setHtml($html);
     $this->subject->setCss($css);
     $this->subject->disableInvisibleNodeRemoval();
     $result = $this->subject->emogrify();
     self::assertContains('<div class="foo" style="display: none;">', $result);
 }
Ejemplo n.º 2
0
 /**
  * @param string $html
  * @param string $css
  * @param bool $keepHiddenNodes
  * @param bool $disableBackupCssNode
  * @param bool $disableInlineStyleAttributes
  * @param bool $appendStylesToHead
  * @return string
  */
 public function process($html, $css, $keepHiddenNodes = true, $disableBackupCssNode = false, $disableInlineStyleAttributes = false, $appendStylesToHead = false)
 {
     $inliner = new Emogrifier($html, $css);
     if ($keepHiddenNodes) {
         $inliner->disableInvisibleNodeRemoval();
     }
     if ($disableBackupCssNode) {
         $inliner->disableBackupCssNode();
     }
     if ($disableInlineStyleAttributes) {
         $inliner->disableInlineStyleAttributesParsing();
     }
     if ($appendStylesToHead) {
         $inliner->appendStylesToHead();
     }
     return $inliner->emogrify();
 }
Ejemplo n.º 3
0
 /**
  * Initialize the CSS inliner.
  */
 public function __construct()
 {
     $this->inliner = new \Pelago\Emogrifier();
     $this->inliner->disableInvisibleNodeRemoval();
 }