Position Absolute

重新思考我们如何管理福彩3d布衣天下图邮件开发&交易交付

编码福彩3d布衣天下图邮件是前端开发中最令人沮丧的任务之一。从编码发送到发送我们倾向于希望将这些任务推到我们可能的情况下,但是福彩3d布衣天下图邮件是任何系统的一个非常重要的部分,我们必须花时间做正确的事情。

更深入的是福彩3d布衣天下图邮件渲染引擎

在2007年之前,编码福彩3d布衣天下图邮件实际上并不那么糟糕。你甚至可以使用divs和floats。是的,你听到了我。你绝对可以使用IE6在那个时间点提供的任何东西。

然后,发生了灾难性的事情。微软决定用Microsoft Word Engine从Outlook取代IE引擎。正如您所猜的,社区疯了。启动了多个博客帖子和广告系列,以便让微软说明退步。不幸的是,相反的事情发生了。微软确认了他们的选择并发布了博客文章“展望中的单词力量“ (那是 仍然可在archive.org上使用)。博客文章可以在一个简单的报价中总结:

“我们决定继续使用Word来创建福彩3d布衣天下图邮件,因为我们相信它是最好的福彩3d布衣天下图邮件创作体验......”
威廉肯尼迪
公司副总裁,办公通讯和表格团队

恭喜那个丑陋的第3条条形图!就像那样,福彩3d布衣天下图邮件发展景观完全改变了。

Outlook 2000和2003使用计算机上安装的IE版本进行渲染福彩3d布衣天下图邮件,因此您可以实际使用Outlook 2003使用IE 11。但是,这可能不是最好的想法。有很多虫子因为 IE 11没有为此建造.

此外,还有其他要知道的东西非常令人沮丧 - 从2007年到2013年在渲染引擎中没有改进。用新的涂料几乎相同。现在就是这样说,做了,让我们来过去的展望,并立即进行更多的福彩3d布衣天下图邮件景观。

.

Yahoo,Gmail,Hotmail - 它们都使用自定义引擎来捣碎HTML,并占据内容的“安全”版本。他们还删除了任何样式标签。由于它们直接将福彩3d布衣天下图邮件加载到界面中而不是IF帧中,他们无法冒险与您的自定义CSS打破其接口。

移动景观非常奇特。在一侧,您拥有使用WebKit的默认IOS和Android邮件。这通常非常令人惊讶。在另一边,您拥有Gmail应用程序和收件箱,仍然使用桌面Gmail版本的相同废话。我不确定为什么谷歌这样;有一件事是肯定的,他们不关心敏感的福彩3d布衣天下图邮件。如果您绝对必须,有一种技术可以在Gmail中实现响应福彩3d布衣天下图邮件,但准备好失去无数个小时来测试。另外,它更像是一个黑客,它是gmail,允许您做出响应的福彩3d布衣天下图邮件。

现在,当您的营销总监随着一些小间距问题回到您时,您可以理解为什么我们的Devs疯狂。

优化开发时间

时间花费了编码福彩3d布衣天下图邮件存在真正的问题。即使是经验丰富的DEV也会失去一个可恶的时间测试所有可能的配置,他可以花费对公司更有用的时间。当你把这项任务交给实习生时,我甚至都在谈论(这发生了很多);他不仅会花时间试图弄清楚这个东西,他不知道他正在去哪里,代码可能具有很差的质量。

所以今天我会审查你最好的工具,你可以给你的团队实现两个目标,其中一个 节约时间很多,和第二个 保持一个干净的代码库,这尊重标准,并且您可以在您将这封新的交易福彩3d布衣天下图邮件中进行代码时构建。

Zurb Ink CSS框架

墨水 在绝望环境中是一种新鲜空气的气息。墨水是一个经过战斗的响应福彩3d布衣天下图邮件框架,主要处理您的福彩3d布衣天下图邮件布局。它应该真的是您对任何福彩3d布衣天下图邮件项目的起点。

但是,墨水是不是银子弹。有一件事,它没有SASS和更少的文件结构。您陷入了一个Mangled CSS文件。它还需要一些关于保证金和划桨的一些决定,这将与您的设计冲突。它也可能增加您使用的表数。不要给我错了;它仍然是福彩3d布衣天下图邮件的最佳CSS框架。它只是不是像我们希望的那样进入。

墨水响应系统背后的魔力

墨水使用行系统 TD包装器在此显示出来,当窗口宽度小于600px时,它会把它放在 显示:块。这将列的布局更改为堆叠堆叠。这 扩展器TD. 用于修复一些错误以使表格转到移动布局中的全宽。

如前所述,这将无法在Gmail中使用,但它现在是最佳未来证明技术。

预先使用者,或如何保持代码清洁

初步者 不是一个新工具。三年前,我在Cakemail上使用它来将CSS文件内联到HTML。然而,过去3年来改变的是它现在更具可用性。对于当时在完全蒸汽运行时似乎死亡的项目,并且支持非常好。它甚至会修复您不了解的东西,让您的福彩3d布衣天下图邮件更兼容。有一个咕噜声插件,因此应该容易地集成到您当前的堆栈中。您现在可以将HTML文件保留清洁并在飞行中生成CSS内联版本。

如果您有一个人进入网站并复制/粘贴他的代码以获得内联版本,请自动化此过程,因为否则它会浪费这么多时间。

自动化工具

有几种JavaScript工具可以帮助您更快地测试福彩3d布衣天下图邮件的代码。对于一个,你有litmus 咕噜咕噜。使用一个简单的命令,您可以将新测试推向Litmus。

// Send a specific template to litmus
grunt litmus:dist/output/sidebar_hero/index.html

然后有 咕噜咕噜,这使得可以轻松向任何人发送测试福彩3d布衣天下图邮件。


// Send a template to any email address
grunt email --fileSrc=dist/output/example.html

团队工作流程

我和时间再次看到通过纠结的不可重用的HTML标记来查找福彩3d布衣天下图邮件。福彩3d布衣天下图邮件模板求助与架构组件的模板引擎一起使用。您抽出的丑陋越多,您的Devs越快就可以根据以前的工作实现新模板。

现实是,在开始新项目时,您的典型团队没有完成交易模板。该家伙决定编码它们,它们会生成其模板的输出版本。然后他们将Sendgrid库插入它。他们忘记了他们甚至存在。

但随后公司成长,更多的团队开始分享模板,他们发现它们并不总是使用相同的语言或模板发动机。他们开始自定义了所有自己的模板,并最终结束了三组非常相似的福彩3d布衣天下图邮件模板。然后发生了什么发生的事情 - 有一天,营销团队想要改变福彩3d布衣天下图邮件标题,现在您正在重新执行三个不同的团队的工作并尝试协调发布。对应该这么简单的事情有挫败感,并且很多时间都丢失了。

实际上,它们应该全部扩展相同的模板,用相同的模板引擎编码。如果您使用LIB来发送福彩3d布衣天下图邮件,当它们提供他们收到HTML代码的数据时。然后,要修改标题,您只需要一个人修改基本模板,所有应用程序都将同时使用相同的标头。这样,您也可以构建一个组件库并隐藏它后面的丑陋表。这将使其他DEVS能够更快地构建新的福彩3d布衣天下图邮件,错误较少​​。

就个人而言,我使用Nunjucks处理我的福彩3d布衣天下图邮件HTML组件。它使我能做这样的事情:

// Cross compatible button for email services
{% macro button(label='default', link='#', class='', align='left') %}
 <table class="button {{class}}" align="{{align}}">
  <tr>
    <td>
      <a href="{{link}}">{{label}}</a>
    </td>
  </tr>
 </table>
{% endmacro %}

// import component in template
{% from "/html-components/component.button.html" import button %}


//Usage
button('Google', 'http://www.google.com', 'button-green', 'left');

更聪明地关于交易福彩3d布衣天下图邮件交付

目前您目前正在使用提供商给您的图书馆来为您提供应用程序的交易福彩3d布衣天下图邮件。这是一个很好的第一步。但是,您需要考虑提供商拆卸时会发生什么(并且它将)。

送货服务不仅仅是发送和接收响应。在整合应用程序的交易福彩3d布衣天下图邮件传送时,有三种核心事项:

备份

您不应该锁定任何一个提供商。当提供商失败时,应该有一种方法可以将该请求重新路由到另一个提供商。特别是因为他们大多数提供了几千份免费福彩3d布衣天下图邮件,这可能是救生员。您的“忘记密码”福彩3d布衣天下图邮件不应仅依赖于一个服务。

此外,虽然有些人提供“模板发动机”,请不要锁定它。使用贵公司的使用,然后通过他们的API发送模板,这样您就不会破坏可重用性。

2.异步

您不必等待任何送货服务来回复。如果您可以在任何福彩3d布衣天下图邮件服务提供商中构建在100 ms与200毫秒响应的服务。无论如何,您将不知道是否发送了它。

3.日志

您应该记录您遇到的任何错误。当您的提供商倒闭时,您还需要提醒您,因此您可以与备用提供商反应。

我还在这里,接下来是什么?

有一个我刚刚谈过的一切的工具。它被称为 墨迹。它将编码堆栈处理到送货服务器。如果您想知道如何更好地发送福彩3d布衣天下图邮件,可能会是 你的第一个停止.

墨盒特点:

编码

REST API交易福彩3d布衣天下图邮件传递服务(nodejs)