About syncfusion-blazor-media-query
A skill for using Syncfusion Blazor Media Query to adapt application layouts to screen breakpoints. It covers breakpoint configuration, conditional rendering, styling, and sharing breakpoint values across pages.
Key features
- 01Detect current screen breakpoint
- 02Configure built-in and custom breakpoints
- 03Render components conditionally
- 04Adapt component properties to screen size
- 05Share breakpoint values across pages
Use cases
- 01Change Data Grid columns across screen sizes
- 02Switch between mobile and desktop navigation
- 03Adapt page columns to available width
- 04Apply responsive behavior across an application
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ syncfusion/ blazor-ui-components-skills --skill syncfusion-blazor-media-queryAfter installing, type/syncfusion-blazor-media-queryin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/breakpoints-and-media-queries.mdcomponent-integration.mdgetting-started.mdresponsive-layout-patterns.mdDetails
From the project READMESyncfusion Blazor Media Query
The Syncfusion Blazor Media Query component detects the current screen size and triggers layout changes based on defined breakpoints. This enables you to build responsive, adaptive applications that provide optimal user experiences across all device sizes.
When to Use This Skill
Use this skill when you need to:
- Build responsive layouts that adapt to different screen sizes (mobile, tablet, desktop)
- Conditionally render components based on the current device breakpoint
- Apply dynamic styling based on screen width
- Integrate Media Query with other Syncfusion components (Data Grid, Charts, etc.)
- Create reusable responsive patterns across multiple pages using cascading values
Documentation and Navigation Guide
Getting Started
📄 Read: references/getting-started.md
- NuGet package installation (Visual Studio, VSCode, .NET CLI)
- Namespace imports and service registration
- Theme stylesheet configuration
- First component implementation
Breakpoints and Media Queries
📄 Read: references/breakpoints-and-media-queries.md
- Understanding built-in breakpoints (Small, Medium, Large)
- ActiveBreakpoint property binding
- Modifying built-in breakpoints
- Creating custom media breakpoints
Responsive Layout Patterns
📄 Read: references/responsive-layout-patterns.md
- Binding to ActiveBreakpoint property
- Conditional rendering based on screen size
- Dynamic property adjustment patterns
- Layout adaptation strategies
Component Integration
📄 Read: references/component-integration.md
- Global component reuse with MainLayout.razor
- Cascading values and parameters
- Integration with Data Grid for responsive tables
- Best practices for multi-component layouts
Quick Start Example
@using Syncfusion.Blazor
<SfMediaQuery @bind-ActiveBreakPoint="currentBreakpoint"></SfMediaQuery>
<h3>Current Breakpoint: @currentBreakpoint</h3>
@if (currentBreakpoint == "Small")
{
<p>You are viewing on a mobile device</p>
}
else if (currentBreakpoint == "Medium")
{
<p>You are viewing on a tablet</p>
}
else
{
<p>You are viewing on a desktop</p>
}
@code {
private string currentBreakpoint { get; set; }
}
Common Use Cases
1. Responsive Data Grid
Hide or show columns based on screen size, adjust row rendering mode:
Small → Vertical row layout, hide non-essential columns
Medium → Adaptive mode enabled
Large → Horizontal layout, all columns visible
2. Responsive Navigation
Show full navigation on desktop, hamburger menu on mobile:
Small → Collapse navigation to hamburger menu
Large → Show full navigation bar
3. Multi-Column Layouts
Adjust grid layout based on available space:
Small → 1-column layout
Medium → 2-column layout
Large → 3-column layout
4. Global App Responsiveness
Wrap entire application in MainLayout.razor with cascading Media Query:
MainLayout → Provides activeBreakpoint to all pages
Child Pages → Use CascadingParameter to access breakpoint
Result → Entire app responds to screen size changes
Key Properties
| Property | Type | Description |
|---|---|---|
ActiveBreakPoint | string | The currently matching breakpoint name (Small, Medium, Large, or custom) |
MediaBreakpoints | List | Custom breakpoints with name and media query string |
Common Patterns
Pattern 1: Simple Conditional Rendering
<SfMediaQuery @bind-ActiveBreakPoint="bp"></SfMediaQuery>
@if (bp == "Small")
{
<MobileLayout />
}
else if (bp == "Medium")
{
<TabletLayout />
}
else
{
<DesktopLayout />
}
Pattern 2: Dynamic Component Properties
<SfMediaQuery @bind-ActiveBreakPoint="bp"></SfMediaQuery>
@{
var pageSize = bp == "Small" ? 10 : 25;
var allowPaging = bp != "Small";
}
<SfGrid PageSettings="@new GridPageSettings { PageSize = pageSize }">
...
</SfGrid>
Pattern 3: Responsive Navigation
<SfMediaQuery @bind-ActiveBreakPoint="bp"></SfMediaQuery>
@if (bp == "Small")
{
<button @onclick="ToggleMenu">☰ Menu</button>
}
else
{
<nav>Full Navigation Bar</nav>
}