# `Excessibility.HTML`
[🔗](https://github.com/lessthanseventy/excessibility/blob/v0.18.1/lib/html.ex#L1)

HTML parsing, wrapping, and static asset path handling.

This module transforms partial HTML (like LiveView renders or controller
responses) into complete, standalone HTML documents suitable for axe-core analysis.

## Responsibilities

- Wrapping partial HTML in complete document structure
- Extracting `<head>` content from the Phoenix endpoint
- Prefixing static asset paths with `file://` for local analysis
- Removing scripts (which can't execute in static snapshots)

This module is used internally by `Excessibility.Snapshot` and typically
doesn't need to be called directly.

# `html_tree`

```elixir
@type html_tree() :: tuple() | [tuple()]
```

# `wrap`

```elixir
@spec wrap(binary() | html_tree()) :: binary()
```

Wraps HTML content in a complete document structure if needed.

Accepts either a binary string or a parsed Floki HTML tree.
Returns a complete HTML document as a string with proper attributes.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
