Git Product home page Git Product logo

django-premailer's Introduction

Django Premailer

Django template tag that turns CSS blocks into style attributes using premailer.

Install

pip install django-premailer

Add django_premailer to your INSTALLED_APPS:

INSTALLED_APPS = (
        '...',
        'django_premailer')

Example Usage

Simply use the premailer template tag around HTML where you need inline CSS:

{% load premailer %}
{% premailer "http://example.com" %}
<html>
<style type="text/css">
h1 { border:1px solid black }
p { color:red;}
.c {
  background-color: #FF6600;
}
.c td {
  background-color: #CCCCCC;
}
</style>
<h1 style="font-weight:bolder">{{ eggs }}</h1>
<p><a href="/blah/">Hej</a></p>
<table class="c">
  <tr>
    <td></td>
  </tr>
</table>
</html>
{% endpremailer %}

The rendered template would look as so;

<html>
<head></head>
<body>
<h1 style="border:1px solid black; font-weight:bolder">Sausage</h1>
<p style="color:red"><a href="http://example.com/blah/">Hej</a></p>
<table style="background-color:#F60" bgcolor="#F60">
  <tr>
    <td style="background-color:#CCC" bgcolor="#CCC"></td>
  </tr>
</table>
</body>
</html>

Settings

If you need more control over premailer's init parameters you can define them using PREMAILER_OPTIONS.

For example, in your settings file;

PREMAILER_OPTIONS = dict(base_url='http://example.com',
                         remove_classes=False)

See https://github.com/peterbe/premailer/blob/master/premailer/premailer.py#L149 for a list of other possible options, but chances are you won't need to set any of these.

Thanks

Author

Alex Hayes [email protected]

django-premailer's People

Contributors

alexhayes avatar atmaniak avatar

Watchers

Vincent van Leeuwen avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.