css-from-html-extractor
                                
                                 css-from-html-extractor copied to clipboard
                                
                                    css-from-html-extractor copied to clipboard
                            
                            
                            
                        PHP library which determines which css is used from html snippets.
CSS from HTML extractor
Php library which determines which css is used from html snippets. It is used in jandc/critical-css to automatically and dynamically determine critical css on a per page basis.
Installation
composer require jandc/css-from-html-extractor
Usage
With Twig
Register Extension
use CSSFromHTMLExtractor\Twig\Extension as ExtractorExtension;
$extension = new ExtractorExtension()
$extension->addBaseRules('path/to/css');
/** @var Twig_Environment $twig */
$twig->addExtension($extension);
Mark the regions of your templates with the provided blocks
{% fold %}
<div class="my-class">
...
</div>
{% endfold %}
Retrieve the resulting css from the extension
$extension = $twigEnvironment->getExtension(ExtractorExtension::class);
$extension->buildCriticalCssFromSnippets();
Handling raw HTML
$cssFromHTMLExtractor = new CssFromHTMLExtractor();
$cssFromHTMLExtractor->addBaseRules('path/to/css');
$cssFromHTMLExtractor->addHtmlToStore($rawHtml);
$extractedCss = $cssFromHTMLExtractor->buildExtractedRuleSet();