HTML-DeferableCSS
view release on metacpan or search on metacpan
## href
```perl
my $href = $css->href( $alias );
```
This returns this URL for an alias.
## link\_html
```perl
my $html = $css->link_html( $alias );
```
This returns the link HTML markup for the stylesheet referred to by
`$alias`.
## inline\_html
```perl
my $html = $css->inline_html( $alias );
```
This returns an embedded stylesheet referred to by `$alias`.
## link\_or\_inline\_html
```perl
my $html = $css->link_or_inline_html( @aliases );
```
This returns either the link HTML markup, or the embedded stylesheet,
if the file size is not greater than ["inline\_max"](#inline_max).
Note that a stylesheet will be inlined, even if there is are
["cdn\_links"](#cdn_links).
## deferred\_link\_html
```perl
my $html = $css->deferred_link_html( @aliases );
```
This returns the HTML markup for the stylesheets specified by
["aliases"](#aliases), as appropriate for each stylesheet.
If the stylesheets are not greater than ["inline\_max"](#inline_max), then it will
embed them. Otherwise it will return the appropriate markup,
depending on ["defer\_css"](#defer_css).
# KNOWN ISSUES
## Content-Security-Policy (CSP)
If a web site configures a
[Content-Security-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP)
setting to disable all inlined JavaScript, then the JavaScript shim will
not work.
## XHTML Support
This module is written for HTML5.
It does not support XHTML self-closing elements or embedding styles
and scripts in CDATA sections.
## Encoding
All files are embedded as raw files.
No URL encoding is done on the HTML links or ["asset\_id"](#asset_id).
## It's spelled "Deferrable"
It's also spelled "Deferable".
# SOURCE
The development version is on github at [https://github.com/robrwo/HTML-DeferableCSS](https://github.com/robrwo/HTML-DeferableCSS)
and may be cloned from [git://github.com/robrwo/HTML-DeferableCSS.git](git://github.com/robrwo/HTML-DeferableCSS.git)
# BUGS
Please report any bugs or feature requests on the bugtracker website
[https://github.com/robrwo/HTML-DeferableCSS/issues](https://github.com/robrwo/HTML-DeferableCSS/issues)
When submitting a bug or request, please include a test-file or a
patch to an existing test-file that illustrates the bug or desired
feature.
Please report any bugs in `cssrelpreload.js` to
[https://github.com/filamentgroup/loadCSS/issues](https://github.com/filamentgroup/loadCSS/issues).
# AUTHOR
Robert Rothenberg <rrwo@cpan.org>
This module was developed from work for Science Photo Library
[https://www.sciencephoto.com](https://www.sciencephoto.com).
`reset.css` comes from [http://meyerweb.com/eric/tools/css/reset/](http://meyerweb.com/eric/tools/css/reset/).
`cssrelpreload.js` comes from [https://github.com/filamentgroup/loadCSS/](https://github.com/filamentgroup/loadCSS/).
# COPYRIGHT AND LICENSE
This software is Copyright (c) 2020 by Robert Rothenberg.
This is free software, licensed under:
```
The MIT (X11) License
```
( run in 1.518 second using v1.01-cache-2.11-cpan-119454b85a5 )