返回 Skill 列表
extension
分类: 开发与工程无需 API Key

css-first

以CSS为先的专家指导,结合实时MDN Baseline和特性数据。当被问及CSS实现、现代CSS特性、浏览器支持、Baseline状态,或列出新可用的网络平台特性时使用。

person作者: jakexiaohubgithub

CSS First Agent Skill

An intelligent AI agent skill for providing context-aware, modern CSS-first solutions with semantic analysis and framework detection.

Description

This skill transforms any AI agent into a CSS-first expert that enforces zero-JavaScript solutions using cutting-edge CSS features (2021-2026). The agent analyzes user intent, detects project context, and provides intelligently ranked CSS suggestions with implementation guidance.

Core Capabilities:

  • Semantic Intent Recognition: Understands layout, animation, spacing, responsive, visual, interaction, stacking, and typography intents
  • Framework Detection: Automatically detects React, Vue, Angular, Svelte, Tailwind, Bootstrap, etc.
  • Logical-First Approach: Prioritizes writing-mode aware properties for internationalization
  • MDN Integration: Pulls live browser support data and baseline status
  • Intelligent Ranking: Scores suggestions by intent match, browser support, and framework compatibility

When to Use This Skill

Use this skill when:

  • User asks for UI implementation solutions
  • User needs to center elements, create layouts, add animations
  • User wants responsive design patterns
  • User asks about CSS properties or browser support
  • User needs modern CSS alternatives to JavaScript solutions

Live MDN Fetch Workflow

Use the live fetch workflow defined in references/live-mdn-fetch.md whenever Baseline status, newly available features, or current MDN content is requested.

Rules & Guidelines

All behavior rules are documented in references/rules/:

| Rule | File | Summary | | ------------------------ | -------------------------------------------------------------------------------------------------------- | ---------------------------------------------- | | CSS-Only Enforcement | references/rules/css-only-enforcement.md | Always prioritize CSS over JavaScript | | Logical Properties First | references/rules/logical-properties-first.md | Use inline-size over width, etc. | | Modern CSS Features | references/rules/modern-css-features.md | Prioritize 2021-2025 features with baseline | | Semantic Intent Analysis | references/rules/semantic-intent-analysis.md | Detect user intent before suggesting solutions | | Framework Awareness | references/rules/framework-awareness.md | Auto-detect and adapt to project frameworks | | Browser Support | references/rules/browser-support-consideration.md | Always provide baseline status indicators | | Progressive Enhancement | references/rules/progressive-enhancement.md | Core functionality first, enhancements on top | | Browser Verification | references/rules/browser-verification.md | Use MCP servers / browser hooks to verify CSS |

CSS Demos

Production-ready CSS examples organized by category. See css-demos/INDEX.md for the full catalog with MDN links, baseline status, and browser support percentages.

Browser Support Levels

  • 🟢 Widely Available (95%+): Safe for production use
  • 🔵 Newly Available (85-94%): Recently stable, verify target browsers
  • 🟡 Limited Availability (70-84%): Use with progressive enhancement
  • 🟣 Experimental (<70%): Cutting-edge features, use cautiously

Quick Reference

| User Intent | CSS Solution | Demo File | | ------------------------ | ------------------------------- | ------------------------------------------------------ | | Center element | Flexbox / Grid | css-demos/layout/centering-logical.css | | Spacing | Logical Properties | css-demos/layout/logical-spacing.css | | Aligned nested grids | Subgrid | css-demos/layout/subgrid.css | | Parent selection | :has() | css-demos/layout/has-selector.css | | Component styles | CSS Nesting | css-demos/layout/css-nesting.css | | Masonry layout | Grid Lanes | css-demos/layout/grid-lanes-masonry.css | | z-index issues | isolation: isolate | css-demos/layout/isolation-stacking.css | | Fill width with margins | stretch | css-demos/layout/stretch-keyword.css | | Responsive layout | Media queries (range syntax) | css-demos/responsive/media-queries.css | | Feature detection | @supports | css-demos/responsive/supports-rule.css | | Full-height sections | Dynamic viewport units | css-demos/responsive/viewport-units.css | | Container responsive | Container size queries | css-demos/container/size-queries.css | | Component theming | Container style queries | css-demos/container/style-queries.css | | Sticky detection | Scroll state queries | css-demos/container/scroll-state-queries.css | | Tooltip arrow flip | Anchored container queries | css-demos/container/anchored-queries.css | | Page transitions | View Transitions (+ nested) | css-demos/animation/view-transitions.css | | Scroll effects | Scroll-driven animations | css-demos/animation/scroll-driven.css | | Scroll reveals | Scroll-triggered animations | css-demos/animation/scroll-triggered.css | | Entry/exit animation | @starting-style | css-demos/animation/starting-style.css | | Dark mode | light-dark() | css-demos/theming/light-dark-function.css | | Tooltips | Anchor Positioning | css-demos/positioning/anchor-positioning.css | | Carousel / Slider | CSS Carousel | css-demos/interaction/css-carousel.css | | Tabs / Scroll spy | CSS Carousel | css-demos/interaction/css-carousel.css | | Flip card / 3D tile | backface-visibility | css-demos/interaction/flip-card.css | | 3D scenes / Cubes | perspective + preserve-3d | css-demos/interaction/perspective-3d.css | | Popovers / Dropdowns | Popover API | css-demos/interaction/popover.css | | Hover tooltips (no JS) | Interest Invokers | css-demos/interaction/interest-invokers.css | | Touch vs pointer | Hover media queries | css-demos/interaction/hover-media-queries.css | | Scroll chaining | overscroll-behavior | css-demos/interaction/overscroll-behavior.css | | Fixed nav anchor offset | scroll-margin / scroll-padding | css-demos/interaction/scroll-margin-padding.css | | Highlight anchor target | :target / :focus-within | css-demos/interaction/target-focus-within.css | | Form validation | :user-valid/:user-invalid | css-demos/visual/form-validation.css | | Color variations | color-mix() | css-demos/visual/color-mix.css | | Color conversion | Relative color syntax | css-demos/visual/relative-colors.css | | Glassmorphism | backdrop-filter | css-demos/visual/backdrop-filter.css | | Adaptive text on bg | mix-blend-mode | css-demos/visual/mix-blend-mode.css | | Modern shapes | corner-shape | css-demos/visual/corner-shape.css | | Responsive clipping | clip-path: shape() | css-demos/visual/clip-path-shape.css | | Gap separators | column-rule / row-rule | css-demos/visual/gap-decorations.css | | Optical text centering | text-box-trim | css-demos/visual/text-box-trim.css | | Focus outlines clipped | overflow: clip + clip-margin | css-demos/visual/overflow-clip-margin.css | | Conditional values | if() | css-demos/functions/css-if-function.css | | Reusable CSS logic | @function | css-demos/functions/custom-functions.css | | Data-driven styles | Advanced attr() | css-demos/functions/advanced-attr.css | | Auto contrast text | contrast-color() | css-demos/functions/contrast-color.css | | Circular layout | sin() / cos() | css-demos/functions/trigonometric-functions.css | | Staggered animations | sibling-index() / sibling-count() | css-demos/functions/sibling-functions.css | | Cascade control | @layer | css-demos/specificity/cascade-layers.css | | Scoped styles | @scope | css-demos/specificity/scope-rule.css | | Custom select styling | appearance: base-select | css-demos/native-customization/customizable-select.css | | Reduced motion | prefers-reduced-motion | css-demos/accessibility/prefers-reduced-motion.css | | High contrast | prefers-contrast | css-demos/accessibility/prefers-reduced-motion.css | | Forced colors (Win HC) | forced-colors | css-demos/accessibility/prefers-reduced-motion.css |

See Also

  • MDN Web Docs: https://developer.mozilla.org/en-US/docs/Web/CSS
  • CSS Baseline: https://web.dev/baseline/