{"id":35131113,"url":"https://github.com/anydigital/breakout-css","last_synced_at":"2026-02-03T08:16:00.471Z","repository":{"id":331049079,"uuid":"1123482356","full_name":"anydigital/breakout-css","owner":"anydigital","description":"Modern CSS utilities to easily break-out / hang / pop-out images, iframes, and other \"figures\" from their parent container.","archived":false,"fork":false,"pushed_at":"2026-01-25T06:49:50.000Z","size":162,"stargazers_count":2,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-25T08:39:24.692Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anydigital.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-27T01:02:51.000Z","updated_at":"2026-01-25T06:49:54.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/anydigital/breakout-css","commit_stats":null,"previous_names":["anydigital/breakout-css"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/anydigital/breakout-css","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anydigital%2Fbreakout-css","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anydigital%2Fbreakout-css/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anydigital%2Fbreakout-css/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anydigital%2Fbreakout-css/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anydigital","download_url":"https://codeload.github.com/anydigital/breakout-css/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anydigital%2Fbreakout-css/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29038125,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T06:39:36.383Z","status":"ssl_error","status_checked_at":"2026-02-03T06:39:32.787Z","response_time":96,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-12-28T05:13:47.519Z","updated_at":"2026-02-03T08:16:00.465Z","avatar_url":"https://github.com/anydigital.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# breakout-css\n\nModern CSS utilities to easily break-out / hang / pop-out / bleed images, tables, iframes, and other figures from their parent container.\n\n## Installation\n\n### From CDN\n\n```html\n\u003clink\n  rel=\"stylesheet\"\n  href=\"https://cdn.jsdelivr.net/npm/@anydigital/breakout-css@1/dist/breakout.css\"\n/\u003e\n```\n\n### From Source\n\n```css\n@import \"@anydigital/breakout-css\";\n```\n\n^ This is supported by Tailwind v4!\n\n## Usage\n\n### Basic Usage\n\n```html\n\u003cdiv class=\"breakout\"\u003e\n  \u003ch1\u003eArticle Title\u003c/h1\u003e\n  \u003cp\u003eLorem ipsum dolor sit amet...\u003c/p\u003e\n\n  \u003c!-- This image will automatically break out --\u003e\n  \u003cimg src=\"hero.jpg\" alt=\"Hero image\" /\u003e\n\n  \u003cp\u003eMore content here...\u003c/p\u003e\n\u003c/div\u003e\n```\n\n### Supported Elements\n\nThe breakout effect automatically applies to direct children or elements wrapped in `\u003cp\u003e` tags:\n\n**Inline blocks:**\n\n- `img`, `picture`, `figure`, `canvas`, `audio`\n\n**Larger blocks:**\n\n- `table` (responsive with horizontal scroll support), `pre`\n- `iframe`, `object`, `embed`, `video`\n\n**Custom utility classes:**\n\n- Elements with `.breakout-item` or `.breakout-item-max` class\n\n### Headings \u0026 Dividers\n\nFor decorative headings and full-width dividers, use the `.breakout-headings` class. This adds a subtle accent line to the left of headings and makes horizontal rules span the full viewport width:\n\n```html\n\u003cdiv class=\"breakout-headings\"\u003e\n  \u003ch2\u003eSection Title\u003c/h2\u003e\n  \u003cp\u003eSome content...\u003c/p\u003e\n\n  \u003chr /\u003e\n\n  \u003ch3\u003eSubheading\u003c/h3\u003e\n  \u003cp\u003eMore content...\u003c/p\u003e\n\u003c/div\u003e\n```\n\nThe extension applies to the following elements (when they don't have other classes):\n\n- `h2`, `h3`, `h4` (adds decorative accent line)\n- `hr` (breaks out to full viewport width)\n\n_Note: The decorative accent on headings is automatically hidden if the heading immediately follows an `\u003chr\u003e` to avoid visual overlap._\n\n### Manual Breakout\n\nFor elements that don't automatically break out, use the `.breakout-item` class:\n\n```html\n\u003cdiv class=\"breakout\"\u003e\n  \u003cp\u003eRegular content...\u003c/p\u003e\n\n  \u003cdiv class=\"breakout-item\"\u003e\n    \u003ciframe src=\"https://example.com/embed\"\u003e\u003c/iframe\u003e\n  \u003c/div\u003e\n\n  \u003cp\u003eMore content...\u003c/p\u003e\n\u003c/div\u003e\n```\n\n### Force Maximum Width\n\nBy default, breakout elements use `width: fit-content` with `max-width: 125%`, allowing them to size between 100% and 125% width based on their content. To force an element to always use the full 125% breakout width, use `.breakout-item-max`:\n\n```html\n\u003cdiv class=\"breakout\"\u003e\n  \u003cp\u003eRegular content...\u003c/p\u003e\n\n  \u003c!-- This will always be 125% width, never smaller --\u003e\n  \u003cimg src=\"wide-image.jpg\" class=\"breakout-item-max\" alt=\"Wide image\" /\u003e\n\n  \u003cp\u003eMore content...\u003c/p\u003e\n\u003c/div\u003e\n```\n\nNote: `.breakout-item-max` uses `width: 125% !important` to override default sizing.\n\n## How It Works\n\nThe `.breakout` container acts as a content wrapper that:\n\n1. Sets a smart `max-width: calc(10% + 65ch + 10%)` to ensure an optimal reading line length (approx. 65 characters).\n2. Applies `padding-inline: 10%` to create the necessary gutter space for breakout elements to extend into.\n\nThe breakout effect on elements is achieved by:\n\n1. Setting `width: fit-content` with `min-width: 100%` and `max-width: 125%` (inline blocks like `img`, `picture`, `figure`, `canvas`, and `audio` use `min-width: auto` instead). Tables are handled specially to be full-bleed (`max-width: 100vw`) with internal horizontal padding (`7.5%`) and horizontal scroll support.\n2. Using `margin-left: 50%` to position from the center of the container\n3. Using `transform: translateX(-50%)` to shift it left by half its width\n\nThis combination allows elements to extend beyond their parent container (up to 125% width) while remaining visually centered.\n\nThe `.breakout-headings` utility works by:\n\n1. Adding a `::before` pseudo-element to headings (`h2-h4`) positioned to the left.\n2. Using a `100vw` width and negative translation on `hr::before` to create a full-width divider.\n\n### Markdown Support\n\nThe breakout effect works on direct children of `.breakout`, or elements wrapped in `\u003cp\u003e` tags (for Markdown compatibility where images are often wrapped in paragraphs).\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanydigital%2Fbreakout-css","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanydigital%2Fbreakout-css","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanydigital%2Fbreakout-css/lists"}