A crate for inlining CSS into HTML documents. When you send HTML emails you need to use "style" attributes instead of "style" tags.
For example, this HTML:
html
<html>
<head>
<title>Test</title>
<style>
h1, h2 { color:blue; }
strong { text-decoration:none }
p { font-size:2px }
p.footer { font-size: 1px}
</style>
</head>
<body>
<h1>Big Text</h1>
<p>
<strong>Solid</strong>
</p>
<p class="footer">Foot notes</p>
</body>
</html>
Will be turned into this:
html
<html>
<head>
<title>Test</title>
</head>
<body>
<h1 style="color:blue;">Big Text</h1>
<p style="font-size:2px;">
<strong style="text-decoration:none;">Solid</strong>
</p>
<p style="font-size:1px;">Foot notes</p>
</body>
</html>
To use it in your project add the following line to your dependencies
section in project's Cargo.toml
file:
toml
cssinline = "0.1"
```rust use css_inline;
const HTML: &str = r#"
Solid
"#;fn main() -> Result<(), cssinline::InlineError> { let inlined = cssinline::inline(HTML)?; // Do something with inlined HTML, e.g. send an email Ok(()) } ```