Normalize default email client styles.

Overview
email-normalize

About

CSS resets for default styles in email clients

Like browsers, email clients use default styles for HTML.

Unlike browsers, there is little to no standardization, and email developers need to be familiar with many, constantly changing CSS reset techniques.

email-normalize tries to help by providing an up-to-date, community-maintained list of CSS snippets that you can use to normalize styles in HTML emails.

Install

npm install @maizzle/email-normalize
Download
CDN

Usage

In CSS:

@import 'node_modules/@maizzle/email-normalize/email-normalize.css';

In HTML:

<link rel="stylesheet" href="node_modules/@maizzle/email-normalize/email-normalize.css">

In PostCSS:

@import '@maizzle/email-normalize';

In your app:

const rules = require('@maizzle/email-normalize')

rules is an object containing CSS resets organized by email client.

Example:

module.exports = {
  generic: [
    {
      css: 'img { -ms-interpolation-mode: bicubic !important; }',
      description: '`-ms-interpolation-mode` was used for re-sampling images that needed to stretch. Since IE8, this has been set as `bicubic`. This now only works in IE11, which also has a default of `bicubic`. Outlook also has `bicubic` set as default.',
      can_inline: true,
      deprecated: 1655240400000, // June 15, 2022
    }
  ]
}

In this example, the generic key represents the email client.

Rule keys

Each rule object includes several keys that you can use.

css

Type: string

The CSS code, without line breaks or comments.

description

Type: string

A description of what the reset does (or did).

can_inline

Type: undefined|boolean
Default: undefined

Boolean indicating if the CSS reset can be used inline.

deprecated

Type: undefined|number
Default: undefined

Timestamp indicating the date when the CSS reset was deprecated.

These are approximations based on personal experience, unless otherwise noted.

Credits

Name and logo inspired by modern-normalize.

Free "merge" SVG icon by mavadee.

You might also like...

This is email scheduler made using MERN. This repo contains server code, client repo is linked in readme.

Email Scheduler Client This is an email scheduler server (client in different repository). It is made using node.js/express.js. Overview User can sign

Dec 3, 2022

This is an email scheduler made using MERN stack. This repo contains client, server side is linked in readme

Email Scheduler Client This is an email scheduler client (server in different repository). It is made using react. Overview User can sign-up/sign-in,

Dec 3, 2022

Extends the default Bootstrap Modal class. Responsive, stackable, ajax and more.

Note: Since this plugin was created to solve a lot of the issues with BS2, it still uses the BS2 markup syntax. Currently I believe the default BS3 mo

Dec 28, 2022

DOMPurify - a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. DOMPurify works with a secure default, but offers a lot of configurability and hooks. Demo:

DOMPurify - a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. DOMPurify works with a secure default, but offers a lot of configurability and hooks. Demo:

DOMPurify DOMPurify is a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. It's also very simple to use and get started with

Jan 7, 2023

An Betterdiscord plugin that gives the capability to the user send all discord stickers, expect wumpus default stickers.

allstickersexpectwumpusstickers An Betterdiscord plugin that gives the capability to the user send all discord stickers, expect wumpus default sticker

May 23, 2022

Use plain functions as modifiers. Polyfill for RFC: 757 | Default Modifier Manager

Use plain functions as modifiers. Polyfill for RFC: 757 | Default Modifier Manager

Jan 14, 2022

A default Next.js project with boilerplate packages and configurations. Includes Tailwind, TypeScript (strict), ESLint, Prettier, and Husky.

Yet another Next.js project template This template includes a set of our favorite dev tools scaffolded into a Next.js project. Tools include: TypeScri

Dec 27, 2022

Replaces the default Strapi WYSIWYG editor with a customized build of CKEditor 5 html editor packed with useful plugins.

Replaces the default Strapi WYSIWYG editor with a customized build of CKEditor 5 html editor packed with useful plugins.

CKEditor 5 for Strapi Replaces the default Strapi WYSIWYG editor with a customized build of CKEditor 5 packed with useful plugins. šŸ‘‹ Get Started Feat

Jan 2, 2023

Custom alert box using javaScript and css. This plugin will provide the functionality to customize the default JavaScript alert box.

customAlertBoxPlugin Custom Alert Box Plugin Using JavaScript and CSS Author: Suraj Aswal Must Include CSS Code/Default Custom Alert Box Class: /* mus

Sep 10, 2022

Default Description set by probot/settings

sanity-typed-schema-builder Build Sanity schemas declaratively and get typescript types of schema values for free! Typescript types for Sanity Values!

Jan 3, 2023

This JavaScript class generates a placeholder image or default profile image as SVG or PNG

This JavaScript class generates a placeholder image or default profile image as SVG or PNG

This JavaScript class generates a placeholder image or default profile image as SVG or PNG. You can use the following parameters in the constructor:

Oct 12, 2022

Tries to execute sync/async function, returns a specified default value if the function throws

good-try Tries to execute sync/async function, returns a specified default value if the function throws. Why Why not nice-try with it's 70+ million do

Dec 8, 2022

Vaultacks lets users store files off-chain on Gaia. Files are encrypted by default but also can be made public and shared

Vaultacks lets users store files off-chain on Gaia. Files are encrypted by default but also can be made public and shared

Vaultacks Vaultacks is built on the Stacks Chain. It lets users upload files to Gaia, a off-chain data storage system. Vaultacks currently uses the de

Sep 14, 2022

This plugin integrates by default with Twitter bootstrap using badges to display the maximum lenght of the field where the user is inserting text. Uses the HTML5 attribute "maxlength" to work.

Bootstrap MaxLength This plugin integrates by default with Twitter bootstrap using badges to display the maximum length of the field where the user is

Dec 25, 2022

Chrome extension that switches default build tool to Maven at start.spring.io

start.spring.io default to Maven On the 18th of October 2022 https://start.spring.io switched the default build tool from Maven to Gradle spring-io/st

Dec 14, 2022

Open source rich text editor based on HTML5 and the progressive-enhancement approach. Uses a sophisticated security concept and aims to generate fully valid HTML5 markup by preventing unmaintainable tag soups and inline styles.

This project isnā€™t maintained anymore Please check out this fork. wysihtml5 0.3.0 wysihtml5 is an open source rich text editor based on HTML5 technolo

Jan 7, 2023

Open source rich text editor based on HTML5 and the progressive-enhancement approach. Uses a sophisticated security concept and aims to generate fully valid HTML5 markup by preventing unmaintainable tag soups and inline styles.

This project isnā€™t maintained anymore Please check out this fork. wysihtml5 0.3.0 wysihtml5 is an open source rich text editor based on HTML5 technolo

Dec 30, 2022

Transforming styles with JS plugins

Transforming styles with JS plugins

PostCSS PostCSS is a tool for transforming styles with JS plugins. These plugins can lint your CSS, support variables and mixins, transpile future CSS

Dec 30, 2022

Transforming styles with JS plugins

Transforming styles with JS plugins

PostCSS PostCSS is a tool for transforming styles with JS plugins. These plugins can lint your CSS, support variables and mixins, transpile future CSS

Jan 4, 2023
Releases(v1.0.0)
  • v1.0.0(Jun 29, 2021)

  • v0.0.1-0(Jun 28, 2021)

    Prerelease of @maizzle/email-normalize.

    https://github.com/maizzle/email-normalize/compare/3e145aaf64f9013e728d1accbdc2f1d56b130eca...v0.0.1-0

    Source code(tar.gz)
    Source code(zip)
Owner
Maizzle
HTML email development framework
Maizzle
šŸ“« Offline email validation - JS or TS

email-seems-valid An offline check to see if an email seems valid. Contains TS or JS packages for browser or Node.js emailSeemsValid('[email protected]')

earnifi 12 Dec 25, 2022
Internationalisation - A jQuery-Plugin to replace alternate version of text for client side internationalization.

Project status Use case A jQuery plugin to replace alternate version of text for client side internationalisation. Content [TOC] Installation Classica

Torben Sickert 10 Nov 30, 2022
šŸ’ Normalize browsers' default style

My open source work is supported by the community Special thanks to: Differences from normalize.css Smaller Includes only normalizations for the lates

Sindre Sorhus 4.8k Jan 3, 2023
This is an unofficial front end for Hacker News, reminiscent of the Windows XP era Outlook email client on a Windows XP default desktop

Hacker XP Hacker News styled as the Windows XP Outlook email client. Try out Hacker XP here! Description This is an unofficial front end for Hacker Ne

null 19 Jul 12, 2022
A plugin for Master Styles to group up styles and add selectors.

master-styles-group A plugin for Master Styles to group up styles and add selectors. THIS PROJECT IS IN BETA This project may contain bugs and have no

SerKo 5 Sep 27, 2022
Brail is a framework built on NextJS for developing email templates in React, and returning HTML that is compatible with major email clients.

Brail is a framework built on NextJS for developing email templates in React, and returning HTML that is compatible with major email clients. It aims to seperate the concerns of generating the emails and delivering them.

null 121 Jan 2, 2023
Email Genie Allows autocomplete on email field by providing a list of domain suggestions (gmail.com, outlook.com, etc.).

Allows users to easily and quickly complete an email field by providing a list of domain suggestions (gmail.com, outlook.com, etc.). This package stands out for its flexibility, its compatibility with libraries / frameworks, but especially its use of basic HTML and Javascript functionalities that maximize the native behavior of desktop AND mobile browsers.

Simon Arnold 3 Oct 4, 2022
DDG Email Panel is the open source unofficial DuckDuckGo Email Protection panel.

DDG Email Panel ē®€ä½“äø­ę–‡ Open source unofficial DuckDuckGo Email Protection panel. ā­ Features No need to install DuckDuckGo browser extension Supports all

Whatk 87 Dec 28, 2022
Adds OpenType featuresā€”ligatures, kerning, and moreā€”to Normalize.css.

Note You might also like my more recent take on this project, Utility OpenType: CSS utility classes for advanced typographic features. Normalize-OpenT

Kenneth Ormandy 795 Dec 23, 2022
LucaMail - an Open Source,Cross Platform Email Client

LucaMail v0.0.1-beta An Awesome Cross Platform Email Client! Note : This Project Is Still in Beta Version Website . Report Bug . Request Feature . Dis

Yuva raghav 210 Dec 28, 2022