将外部css内联到html元素中。

inlinestyler的Python项目详细描述


Version:0.2.4
Download:http://pypi.python.org/pypi/inlinestyler/
Source:http://github.com/dlanger/inlinestyler/
Keywords:inline, HTML, CSS, email, preflight

inlinestyler是一种将css本地内联到html电子邮件中的简单方法。

html电子邮件的样式是一个black art。css可以工作,但是只有当它被放置 在单个元素上内联(然后是事件,并不总是如此)-这使得 开发令人沮丧,迭代缓慢。

一般的解决方案是使用一个内联服务,它接受 放置在外部的css,并重写它,以便将所有css应用于 单个元素。这些服务中使用最广泛的 可以看出,给竞选班长权力的是Premailer。太棒了 服务,幕后的人花了很多精力来更新它 最新的发现是什么有用什么不有用。

inlinestyler获取(大多数)premailer的功能,并使其 本地可用,无需调用远程服务即可访问。

要查看inline-styler可以做什么,请查看这个demo

警告清空器

此项目相对未维护。我将继续做一些简单的错误修复 (欢迎使用带有测试的补丁),但我不会添加功能或制作 新的css属性可以工作。

如果这不符合您的需要,请查看premailer project

历史记录

Dave Cranwell编写了最初的inline-styler单应用django项目。 inlinestyler是将该项目重构为可使用的独立包 在Django外面。

要求

inlinestyler需要以下程序包才能运行:

  • cssutils
  • lxml

它还需要一个css_complaiance.csv文件,该文件指示 各种电子邮件客户端与某些css功能的兼容性。这个 包含在包中,但可以从 Campaign Monitor的电子表格。

用法

from inlinestyler.utils import inline_css
message_inline_css = inline_css(message_external_css)

message_external_css必须是包含要内联的消息的字符串, 在html中显示的css如下:

  • 绝对链接<link rel="stylesheet"href="http://mysite.com/styles.css" />
  • <head>中的<style>块,不使用@import

代码还将计算消息与 各种客户机(使用css_compliance.csv文件),但这个数字不是 但还是暴露了。

贡献

所有的开发都发生在github:http://github.com/dlanger/inlinestyler

开始吧:

  1. 在某处复制此回购协议
  2. make init以安装正确的依赖项
  3. make test运行测试套件

捐款总是非常受欢迎的。如果你发现少了什么,就加上 给我一个请求。

note:ubuntu 12.04(和其他一些发行版)包括libxsltversion 1.1.26,它将现在为空的<head>标记更改为<head/>- 不是有效的HTML 5。查看用于生成的libxslt版本 您的libxml,检查make init的输出并查找 看起来像Using build configuration of libxslt 1.1.XX;如果 也就是说26,预期会有一些测试失败(此时,您 可以依靠TravisCI为您运行测试)。

您也可以从源安装自己的libxslt版本,但是 你可能会过得很不愉快。

许可证

此发行版是根据New BSD License授权的。请看 LICENSE文件,获取许可证文本的完整副本。

据我所知,dave cranwellreleased是潜在的inline-styler 项目进入公共领域:

I’m […] releasing it to the public after many requests for the source.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
接收com。太阳媒体声音Java中来自MIDI控制器的FastShortMessage,如何解码?   JAVA日志记录:当日志文件将要滚动时,应用程序将暂停   java如何使用循环来重复函数选择   java OpenJPA和存储过程,Weblogic 12c   编码风格什么是正确的方式来使用。Java中的equals方法?   通过tcpsocket将xml从java发送到C#   java对象比JTable效率更高   java在运行时删除标志\半透明\状态   java将一个数均匀随机地分成m个部分   链表的Java数组   javajaxws:在数据库中记录请求和响应   java maven,执行标记,缺少id标记   泛型类中的java泛型转换