Screen Size
Orientation
Bit Depth
Examples
Responsive Test
This page tests responsive utilities by comparing SCSS mixins with CSS classes across different screen conditions. Each test row shows an element styled with SCSS mixins alongside the same element styled with CSS utility classes. Both columns should look identical when the conditions are met, demonstrating that mixins and classes produce equivalent results.
Test Overview
Components Tested
- • Background (all 7 variants)
- • Visibility (all 7 variants)
- • Text (all 7 variants)
- • Value (all 7 variants)
- • Layout/Flexbox (size + orientation only)
Variants Tested
- • Size only (sm:, md:, lg:)
- • Orientation only (portrait:)
- • Bit-depth only (1bit:, 2bit:, 4bit:)
- • Size + Orientation
- • Size + Bit-depth
- • Orientation + Bit-depth
- • All three combined
Test Coverage
6 Components tested across
7 Responsive Variants each
7 Responsive Variants each
Total: 40 test combinations
Responsive Utilities Test Results
The following tables test various responsive utility components, comparing SCSS mixin implementations with CSS class implementations. Each component supports different combinations of size breakpoints, orientation, and bit-depth conditions.
Background Component
Test Case | SCSS Mixin Result | CSS Class Result |
---|---|---|
md:bg--gray-50
@include screen.screen('md')
Gray bg on md+ screens
|
|
|
portrait:bg--gray-50
@include screen.screen('portrait')
Gray bg in portrait
|
|
|
2bit:bg--gray-50
@include screen.screen('2bit')
Gray bg on 2-bit screens
|
|
|
md:portrait:bg--gray-50
@include screen.screen('md', 'portrait')
Gray bg on md+ portrait
|
|
|
md:2bit:bg--gray-50
@include screen.screen('md', '2bit')
Gray bg on md+ 2-bit
|
|
|
portrait:2bit:bg--gray-50
@include screen.screen('portrait', '2bit')
Gray bg on portrait 2-bit
|
|
|
md:portrait:2bit:bg--gray-50
@include screen.screen('md', 'portrait', '2bit')
Gray bg on md+ portrait 2-bit
|
|
|
Visibility Component
Test Case | SCSS Mixin Result | CSS Class Result |
---|---|---|
sm:hidden
@include screen.screen('sm')
Hidden on sm+ screens
|
|
|
portrait:hidden
@include screen.screen('portrait')
Hidden on portrait screens
|
|
|
4bit:hidden
@include screen.screen('4bit')
Hidden on 4-bit screens
|
|
|
md:portrait:hidden
@include screen.screen('md', 'portrait')
Hidden on md+ portrait screens
|
|
|
lg:2bit:hidden
@include screen.screen('lg', '2bit')
Hidden on lg+ 2-bit screens
|
|
|
portrait:4bit:hidden
@include screen.screen('portrait', '4bit')
Hidden on portrait 4-bit screens
|
|
|
md:portrait:2bit:hidden
@include screen.screen('md', 'portrait', '2bit')
Hidden on md+ portrait 2-bit screens
|
|
|
Text Component
Test Case | SCSS Mixin Result | CSS Class Result |
---|---|---|
lg:text--center
@include screen.screen('lg')
Centered text on lg+ screens
|
Aa
|
Aa
|
portrait:text--center
@include screen.screen('portrait')
Centered text in portrait
|
Aa
|
Aa
|
2bit:text--center
@include screen.screen('2bit')
Centered text on 2-bit screens
|
Aa
|
Aa
|
md:portrait:text--center
@include screen.screen('md', 'portrait')
Centered on md+ portrait
|
Aa
|
Aa
|
lg:4bit:text--center
@include screen.screen('lg', '4bit')
Centered on lg+ 4-bit screens
|
Aa
|
Aa
|
portrait:2bit:text--center
@include screen.screen('portrait', '2bit')
Centered on portrait 2-bit screens
|
Aa
|
Aa
|
md:portrait:2bit:text--right
@include screen.screen('md', 'portrait', '2bit')
Right-aligned on md+ portrait 2-bit
|
Aa
|
Aa
|
Value Component
Test Case | SCSS Mixin Result | CSS Class Result |
---|---|---|
md:value--large
@include screen.screen('md')
Large value on md+ screens
|
Aa
|
Aa
|
portrait:value--large
@include screen.screen('portrait')
Large value in portrait
|
Aa
|
Aa
|
4bit:value--large
@include screen.screen('4bit')
Large value on 4-bit screens
|
Aa
|
Aa
|
lg:portrait:value--large
@include screen.screen('lg', 'portrait')
Large value on lg+ portrait
|
Aa
|
Aa
|
md:2bit:value--large
@include screen.screen('md', '2bit')
Large value on md+ 2-bit screens
|
Aa
|
Aa
|
portrait:4bit:value--large
@include screen.screen('portrait', '4bit')
Large value on portrait 4-bit
|
Aa
|
Aa
|
lg:portrait:4bit:value--xlarge
@include screen.screen('lg', 'portrait', '4bit')
XLarge on lg+ portrait 4-bit
|
Aa
|
Aa
|
Flex Component
Test Case | SCSS Mixin Result | CSS Class Result |
---|---|---|
md:flex--center
@include screen.screen('md')
Centered on md+ screens
|
|
|
portrait:flex--col
@include screen.screen('portrait')
Column layout in portrait
|
|
|
lg:portrait:flex--center
@include screen.screen('lg', 'portrait')
Centered on lg+ portrait
|
|
|
Layout Component
Test Case | SCSS Mixin Result | CSS Class Result |
---|---|---|
md:layout--col
@include screen.screen('md')
Column layout on md+ screens
|
|
|
portrait:layout--bottom
@include screen.screen('portrait')
Center layout in portrait
|
|
|
lg:portrait:layout--bottom
@include screen.screen('lg', 'portrait')
Bottom alignment on lg+ portrait
|
|
|
Component Coverage
Components Tested
- • Background (all 7 variants)
- • Visibility (all 7 variants)
- • Text (all 7 variants)
- • Value (all 7 variants)
- • Flex (size + orientation only)
- • Layout (size + orientation only)
Variants Tested
- • Size only (sm:, md:, lg:)
- • Orientation only (portrait:)
- • Bit-depth only (1bit:, 2bit:, 4bit:)
- • Size + Orientation
- • Size + Bit-depth
- • Orientation + Bit-depth
- • All three combined
Components Not Yet Tested
- • Spacing (p--, m--, etc.)
- • Gap (gap--)
- • Size (w--, h--)
- • Rounded (rounded--)
- • Border (border--)
- • Grid (grid--, col--)
- • Clamp (clamp--)
- • Effects (crisp-edges)
- • Image (image--)