
Css Expert
Get standards-aligned guidance on flexbox, grid, responsive breakpoints, animations, and modern CSS layout while you build UI.
Install
npx skills add https://github.com/rightnow-ai/openfang --skill css-expertWhat is this skill?
- Separates flexbox (1D) vs CSS Grid (2D) with practical alignment and gap patterns
- Promotes design tokens via custom properties on :root with scoped overrides
- Mobile-first min-width media queries and logical properties for i18n-ready layouts
- Intentional cascade control with @layer instead of !important sprawl
- Grid template areas and auto-fit/minmax for responsive grids with fewer breakpoints
Adoption & trust: 1 installs on skills.sh; 17.8k GitHub stars; 3/3 security scanners passed (skills.sh audits); trending (+100% hot-view momentum).
Recommended Skills
Journey fit
Build is the primary journey phase because the skill delivers layout and styling decisions during interface implementation, not distribution or ops. Frontend is the canonical shelf for CSS structure, responsive behavior, and visual layout techniques applied in components and pages.
Common Questions / FAQ
Is Css Expert safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Css Expert
# CSS Expert A front-end layout specialist with deep command of modern CSS, from flexbox and grid to container queries and cascade layers. This skill provides precise, standards-compliant guidance for building responsive, accessible, and maintainable user interfaces using the latest CSS specifications and best practices. ## Key Principles - Use flexbox for one-dimensional layouts (rows or columns) and CSS Grid for two-dimensional layouts (rows and columns simultaneously) - Embrace custom properties (CSS variables) for theming, spacing scales, and any value that repeats or needs runtime adjustment - Design mobile-first with min-width media queries, layering complexity as viewport size increases - Prefer logical properties (inline-start, block-end) over physical ones (left, bottom) for internationalization-ready layouts - Leverage the cascade intentionally with @layer declarations to control specificity without resorting to !important ## Techniques - Use flexbox justify-content and align-items for main-axis and cross-axis alignment; flex-wrap with gap for fluid card layouts - Define CSS Grid layouts with grid-template-areas for named regions, and auto-fit/auto-fill with minmax() for responsive grids without media queries - Create design tokens as custom properties on :root (--color-primary, --space-md) and override them in scoped selectors or media queries - Use @container queries to style components based on their parent container size rather than the viewport - Build animations with @keyframes and animation shorthand; prefer transform and opacity for GPU-accelerated, jank-free motion - Apply transitions on interactive states (hover, focus-visible) with appropriate duration (150-300ms) and easing functions - Use the :has() selector for parent-aware styling, :is()/:where() for grouping selectors with controlled specificity ## Common Patterns - **Holy Grail Layout**: CSS Grid with grid-template-rows (auto 1fr auto) and grid-template-columns (sidebar content sidebar) for header/footer/sidebar page structures - **Fluid Typography**: clamp(1rem, 2.5vw, 2rem) for font sizes that scale smoothly between minimum and maximum values without breakpoints - **Aspect Ratio Boxes**: Use the aspect-ratio property directly instead of the legacy padding-bottom hack for responsive media containers - **Dark Mode Toggle**: Define color tokens as custom properties, swap them inside a prefers-color-scheme media query or a data-theme attribute selector ## Pitfalls to Avoid - Do not use fixed pixel widths for layout containers; prefer percentage, fr units, or min/max constraints for fluid responsiveness - Do not stack z-index values arbitrarily; establish a z-index scale in custom properties and document each layer's purpose - Do not rely on vendor prefixes without checking current browser support; tools like autoprefixer handle this systematically - Do not nest selectors excessively in preprocessors, as the generated CSS becomes highly specific and difficult to maintain or override