This package is not installable via Composer 1.x, please make sure you upgrade to Composer 2+. Read more about our Composer 1.x deprecation policy.

Laravel 5 Mail CSS Inliner Service

1.0.0 2016-06-25 12:46 UTC

This package is auto-updated.

Last update: 2021-07-19 01:19:45 UTC



Most email clients won't render CSS (on a <link> or a <style>). The solution is to inline your CSS directly into the HTML. Doing this by hand is tedious and difficult to maintain. The goal of this package is to automate the process of inlining that CSS before sending the emails.


Using a wonderful CSS inliner package wraped in a SwiftMailer plugin and served as a Service Provider. It works without configuration


            h1 {
                font-size: 24px;
                color: #000;
        <h1>Your content</h1>

Into this:

        <h1 style="font-size: 24px; color: #000;">Your content</h1>


Begin by installing this package through Composer. Edit your project's composer.json file to require igonics/laravel-mail-css-inliner.

This package requires Laravel 5.x

  "require": {
        "igonics/laravel-mail-css-inliner": "~1.0"

Next, update Composer from the Terminal:

$ composer update

Once this operation completes, you must add the service provider. Open app/config/app.php, and add a new item to the providers array.


Found a bug?

Please, let me know! Send a pull request or a patch. Questions? Ask! I will respond to all filed issues.


This package was greatly inspired by Emogrifier CSS Inliner and Fede Isas's implementation of a similar service provider. The implementation became less configurable however with its main dependency CssToInlineStyles becoming less configurable with it's latest update which presented breaking changes to the existing API. This package was created as a more configurable solution with the ability to also handle poorly formatted HTML, which the previous implementations had issues with.


This package is open-sourced software licensed under the MIT license