ScrollArea
content that scrolls a whole row at a time, with a scrollbar drawn in cells.
usage
example
01 ben throttle
02 maureen corley
03 malcolm corley
04 adrian ripburger
05 bolus
06 nestor
07 suzi
08 father torque
09 darrel
10 emmet
11 todd newlan
12 miranda wood
13 quohog
14 horace
15 mavis
16 the chief
17 officer floyd
18 ricky myran
19 uncle pete
20 little todd
21 doreen schmorley
22 the unknown avenger
23 the boom-boom brothers
24 professor schmetterling
25 a cavefish
26 a vulture
27 a rottwheeler
28 the derby announcer
29 the news anchor
30 mrs. corley
31 the factory guard
32 ben throttle
33 maureen corley
34 malcolm corley
35 adrian ripburger
36 bolus
37 nestor
38 suzi
39 father torque
40 darrel
▴
▾
code
import { ScrollArea } from 'charcell/react';
export function ScrollAreaExample() {
return (
<div style={{ display: 'grid', height: 'calc(var(--charcell-row) * 8)' }}>
<ScrollArea overscroll="none" label="everyone on highway 9" fill>
<div style={{ whiteSpace: 'pre' }}>01 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>02 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>03 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>04 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>05 bolus</div>
<div style={{ whiteSpace: 'pre' }}>06 nestor</div>
<div style={{ whiteSpace: 'pre' }}>07 suzi</div>
<div style={{ whiteSpace: 'pre' }}>08 father torque</div>
<div style={{ whiteSpace: 'pre' }}>09 darrel</div>
<div style={{ whiteSpace: 'pre' }}>10 emmet</div>
<div style={{ whiteSpace: 'pre' }}>11 todd newlan</div>
<div style={{ whiteSpace: 'pre' }}>12 miranda wood</div>
<div style={{ whiteSpace: 'pre' }}>13 quohog</div>
<div style={{ whiteSpace: 'pre' }}>14 horace</div>
<div style={{ whiteSpace: 'pre' }}>15 mavis</div>
<div style={{ whiteSpace: 'pre' }}>16 the chief</div>
<div style={{ whiteSpace: 'pre' }}>17 officer floyd</div>
<div style={{ whiteSpace: 'pre' }}>18 ricky myran</div>
<div style={{ whiteSpace: 'pre' }}>19 uncle pete</div>
<div style={{ whiteSpace: 'pre' }}>20 little todd</div>
<div style={{ whiteSpace: 'pre' }}>21 doreen schmorley</div>
<div style={{ whiteSpace: 'pre' }}>22 the unknown avenger</div>
<div style={{ whiteSpace: 'pre' }}>23 the boom-boom brothers</div>
<div style={{ whiteSpace: 'pre' }}>24 professor schmetterling</div>
<div style={{ whiteSpace: 'pre' }}>25 a cavefish</div>
<div style={{ whiteSpace: 'pre' }}>26 a vulture</div>
<div style={{ whiteSpace: 'pre' }}>27 a rottwheeler</div>
<div style={{ whiteSpace: 'pre' }}>28 the derby announcer</div>
<div style={{ whiteSpace: 'pre' }}>29 the news anchor</div>
<div style={{ whiteSpace: 'pre' }}>30 mrs. corley</div>
<div style={{ whiteSpace: 'pre' }}>31 the factory guard</div>
<div style={{ whiteSpace: 'pre' }}>32 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>33 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>34 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>35 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>36 bolus</div>
<div style={{ whiteSpace: 'pre' }}>37 nestor</div>
<div style={{ whiteSpace: 'pre' }}>38 suzi</div>
<div style={{ whiteSpace: 'pre' }}>39 father torque</div>
<div style={{ whiteSpace: 'pre' }}>40 darrel</div>
</ScrollArea>
</div>
);
}▴
▾
<script setup lang="ts">
import { ScrollArea } from 'charcell/vue';
</script>
<template>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea overscroll="none" label="everyone on highway 9" fill>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>
</template>▴
▾
<script lang="ts">
import { ScrollArea } from 'charcell/svelte';
</script>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea overscroll="none" label="everyone on highway 9" fill>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>▴
▾
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<!-- component: ScrollAreaDriver (behavior not included) -->
<div
class="CharcellScrollArea CharcellScrollArea--stepped CharcellScrollArea--overscroll-none CharcellScrollArea--fill"
>
<div
class="CharcellScrollArea__viewport"
tabindex="0"
role="region"
aria-label="everyone on highway 9"
>
<div class="CharcellScrollArea__clip">
<div class="CharcellScrollArea__rows">
<div class="CharcellScrollArea__columns">
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</div>
</div>
</div>
</div>
<div class="CharcellScrollArea__vertical-bar" aria-hidden="true">
<div class="CharcellScrollArea__step">▴</div>
<div class="CharcellScrollArea__vertical-track">
<div class="CharcellScrollArea__vertical-thumb"></div>
</div>
<div class="CharcellScrollArea__step">▾</div>
</div>
<div
class="CharcellScrollArea__horizontal-bar CharcellScrollArea__horizontal-bar--fitting"
aria-hidden="true"
>
<div class="CharcellScrollArea__step"></div>
<div class="CharcellScrollArea__horizontal-track">
<div class="CharcellScrollArea__horizontal-thumb"></div>
</div>
<div class="CharcellScrollArea__step"></div>
</div>
</div>
<!-- /component -->
</div>▴
▾
import { ScrollArea } from 'charcell/react';
export function ScrollAreaExample() {
return (
<div style={{ display: 'grid', height: 'calc(var(--charcell-row) * 8)' }}>
<ScrollArea
scrolling="fluid"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style={{ whiteSpace: 'pre' }}>01 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>02 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>03 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>04 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>05 bolus</div>
<div style={{ whiteSpace: 'pre' }}>06 nestor</div>
<div style={{ whiteSpace: 'pre' }}>07 suzi</div>
<div style={{ whiteSpace: 'pre' }}>08 father torque</div>
<div style={{ whiteSpace: 'pre' }}>09 darrel</div>
<div style={{ whiteSpace: 'pre' }}>10 emmet</div>
<div style={{ whiteSpace: 'pre' }}>11 todd newlan</div>
<div style={{ whiteSpace: 'pre' }}>12 miranda wood</div>
<div style={{ whiteSpace: 'pre' }}>13 quohog</div>
<div style={{ whiteSpace: 'pre' }}>14 horace</div>
<div style={{ whiteSpace: 'pre' }}>15 mavis</div>
<div style={{ whiteSpace: 'pre' }}>16 the chief</div>
<div style={{ whiteSpace: 'pre' }}>17 officer floyd</div>
<div style={{ whiteSpace: 'pre' }}>18 ricky myran</div>
<div style={{ whiteSpace: 'pre' }}>19 uncle pete</div>
<div style={{ whiteSpace: 'pre' }}>20 little todd</div>
<div style={{ whiteSpace: 'pre' }}>21 doreen schmorley</div>
<div style={{ whiteSpace: 'pre' }}>22 the unknown avenger</div>
<div style={{ whiteSpace: 'pre' }}>23 the boom-boom brothers</div>
<div style={{ whiteSpace: 'pre' }}>24 professor schmetterling</div>
<div style={{ whiteSpace: 'pre' }}>25 a cavefish</div>
<div style={{ whiteSpace: 'pre' }}>26 a vulture</div>
<div style={{ whiteSpace: 'pre' }}>27 a rottwheeler</div>
<div style={{ whiteSpace: 'pre' }}>28 the derby announcer</div>
<div style={{ whiteSpace: 'pre' }}>29 the news anchor</div>
<div style={{ whiteSpace: 'pre' }}>30 mrs. corley</div>
<div style={{ whiteSpace: 'pre' }}>31 the factory guard</div>
<div style={{ whiteSpace: 'pre' }}>32 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>33 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>34 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>35 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>36 bolus</div>
<div style={{ whiteSpace: 'pre' }}>37 nestor</div>
<div style={{ whiteSpace: 'pre' }}>38 suzi</div>
<div style={{ whiteSpace: 'pre' }}>39 father torque</div>
<div style={{ whiteSpace: 'pre' }}>40 darrel</div>
</ScrollArea>
</div>
);
}▴
▾
<script setup lang="ts">
import { ScrollArea } from 'charcell/vue';
</script>
<template>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
scrolling="fluid"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>
</template>▴
▾
<script lang="ts">
import { ScrollArea } from 'charcell/svelte';
</script>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
scrolling="fluid"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>▴
▾
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<!-- component: ScrollAreaDriver (behavior not included) -->
<div
class="CharcellScrollArea CharcellScrollArea--overscroll-none CharcellScrollArea--fill"
>
<div
class="CharcellScrollArea__viewport"
tabindex="0"
role="region"
aria-label="everyone on highway 9"
>
<div class="CharcellScrollArea__clip">
<div class="CharcellScrollArea__rows">
<div class="CharcellScrollArea__columns">
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</div>
</div>
</div>
</div>
<div class="CharcellScrollArea__vertical-bar" aria-hidden="true">
<div class="CharcellScrollArea__step">▴</div>
<div class="CharcellScrollArea__vertical-track">
<div class="CharcellScrollArea__vertical-thumb"></div>
</div>
<div class="CharcellScrollArea__step">▾</div>
</div>
<div
class="CharcellScrollArea__horizontal-bar CharcellScrollArea__horizontal-bar--fitting"
aria-hidden="true"
>
<div class="CharcellScrollArea__step"></div>
<div class="CharcellScrollArea__horizontal-track">
<div class="CharcellScrollArea__horizontal-thumb"></div>
</div>
<div class="CharcellScrollArea__step"></div>
</div>
</div>
<!-- /component -->
</div>▴
▾
import { ScrollArea } from 'charcell/react';
export function ScrollAreaExample() {
return (
<div style={{ display: 'grid', height: 'calc(var(--charcell-row) * 8)' }}>
<ScrollArea
scrollbar="hidden"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style={{ whiteSpace: 'pre' }}>01 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>02 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>03 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>04 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>05 bolus</div>
<div style={{ whiteSpace: 'pre' }}>06 nestor</div>
<div style={{ whiteSpace: 'pre' }}>07 suzi</div>
<div style={{ whiteSpace: 'pre' }}>08 father torque</div>
<div style={{ whiteSpace: 'pre' }}>09 darrel</div>
<div style={{ whiteSpace: 'pre' }}>10 emmet</div>
<div style={{ whiteSpace: 'pre' }}>11 todd newlan</div>
<div style={{ whiteSpace: 'pre' }}>12 miranda wood</div>
<div style={{ whiteSpace: 'pre' }}>13 quohog</div>
<div style={{ whiteSpace: 'pre' }}>14 horace</div>
<div style={{ whiteSpace: 'pre' }}>15 mavis</div>
<div style={{ whiteSpace: 'pre' }}>16 the chief</div>
<div style={{ whiteSpace: 'pre' }}>17 officer floyd</div>
<div style={{ whiteSpace: 'pre' }}>18 ricky myran</div>
<div style={{ whiteSpace: 'pre' }}>19 uncle pete</div>
<div style={{ whiteSpace: 'pre' }}>20 little todd</div>
<div style={{ whiteSpace: 'pre' }}>21 doreen schmorley</div>
<div style={{ whiteSpace: 'pre' }}>22 the unknown avenger</div>
<div style={{ whiteSpace: 'pre' }}>23 the boom-boom brothers</div>
<div style={{ whiteSpace: 'pre' }}>24 professor schmetterling</div>
<div style={{ whiteSpace: 'pre' }}>25 a cavefish</div>
<div style={{ whiteSpace: 'pre' }}>26 a vulture</div>
<div style={{ whiteSpace: 'pre' }}>27 a rottwheeler</div>
<div style={{ whiteSpace: 'pre' }}>28 the derby announcer</div>
<div style={{ whiteSpace: 'pre' }}>29 the news anchor</div>
<div style={{ whiteSpace: 'pre' }}>30 mrs. corley</div>
<div style={{ whiteSpace: 'pre' }}>31 the factory guard</div>
<div style={{ whiteSpace: 'pre' }}>32 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>33 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>34 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>35 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>36 bolus</div>
<div style={{ whiteSpace: 'pre' }}>37 nestor</div>
<div style={{ whiteSpace: 'pre' }}>38 suzi</div>
<div style={{ whiteSpace: 'pre' }}>39 father torque</div>
<div style={{ whiteSpace: 'pre' }}>40 darrel</div>
</ScrollArea>
</div>
);
}▴
▾
<script setup lang="ts">
import { ScrollArea } from 'charcell/vue';
</script>
<template>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
scrollbar="hidden"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>
</template>▴
▾
<script lang="ts">
import { ScrollArea } from 'charcell/svelte';
</script>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
scrollbar="hidden"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>▴
▾
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<!-- component: ScrollAreaDriver (behavior not included) -->
<div
class="CharcellScrollArea CharcellScrollArea--stepped CharcellScrollArea--scrollbar-hidden CharcellScrollArea--overscroll-none CharcellScrollArea--fill"
>
<div
class="CharcellScrollArea__viewport"
tabindex="0"
role="region"
aria-label="everyone on highway 9"
>
<div class="CharcellScrollArea__clip">
<div class="CharcellScrollArea__rows">
<div class="CharcellScrollArea__columns">
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</div>
</div>
</div>
</div>
</div>
<!-- /component -->
</div>▴
▾
import { ScrollArea } from 'charcell/react';
export function ScrollAreaExample() {
return (
<div style={{ display: 'grid', height: 'calc(var(--charcell-row) * 8)' }}>
<ScrollArea
scrollbar="native"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style={{ whiteSpace: 'pre' }}>01 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>02 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>03 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>04 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>05 bolus</div>
<div style={{ whiteSpace: 'pre' }}>06 nestor</div>
<div style={{ whiteSpace: 'pre' }}>07 suzi</div>
<div style={{ whiteSpace: 'pre' }}>08 father torque</div>
<div style={{ whiteSpace: 'pre' }}>09 darrel</div>
<div style={{ whiteSpace: 'pre' }}>10 emmet</div>
<div style={{ whiteSpace: 'pre' }}>11 todd newlan</div>
<div style={{ whiteSpace: 'pre' }}>12 miranda wood</div>
<div style={{ whiteSpace: 'pre' }}>13 quohog</div>
<div style={{ whiteSpace: 'pre' }}>14 horace</div>
<div style={{ whiteSpace: 'pre' }}>15 mavis</div>
<div style={{ whiteSpace: 'pre' }}>16 the chief</div>
<div style={{ whiteSpace: 'pre' }}>17 officer floyd</div>
<div style={{ whiteSpace: 'pre' }}>18 ricky myran</div>
<div style={{ whiteSpace: 'pre' }}>19 uncle pete</div>
<div style={{ whiteSpace: 'pre' }}>20 little todd</div>
<div style={{ whiteSpace: 'pre' }}>21 doreen schmorley</div>
<div style={{ whiteSpace: 'pre' }}>22 the unknown avenger</div>
<div style={{ whiteSpace: 'pre' }}>23 the boom-boom brothers</div>
<div style={{ whiteSpace: 'pre' }}>24 professor schmetterling</div>
<div style={{ whiteSpace: 'pre' }}>25 a cavefish</div>
<div style={{ whiteSpace: 'pre' }}>26 a vulture</div>
<div style={{ whiteSpace: 'pre' }}>27 a rottwheeler</div>
<div style={{ whiteSpace: 'pre' }}>28 the derby announcer</div>
<div style={{ whiteSpace: 'pre' }}>29 the news anchor</div>
<div style={{ whiteSpace: 'pre' }}>30 mrs. corley</div>
<div style={{ whiteSpace: 'pre' }}>31 the factory guard</div>
<div style={{ whiteSpace: 'pre' }}>32 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>33 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>34 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>35 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>36 bolus</div>
<div style={{ whiteSpace: 'pre' }}>37 nestor</div>
<div style={{ whiteSpace: 'pre' }}>38 suzi</div>
<div style={{ whiteSpace: 'pre' }}>39 father torque</div>
<div style={{ whiteSpace: 'pre' }}>40 darrel</div>
</ScrollArea>
</div>
);
}▴
▾
<script setup lang="ts">
import { ScrollArea } from 'charcell/vue';
</script>
<template>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
scrollbar="native"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>
</template>▴
▾
<script lang="ts">
import { ScrollArea } from 'charcell/svelte';
</script>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
scrollbar="native"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>▴
▾
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<!-- component: ScrollAreaDriver (behavior not included) -->
<div
class="CharcellScrollArea CharcellScrollArea--stepped CharcellScrollArea--scrollbar-native CharcellScrollArea--overscroll-none CharcellScrollArea--fill"
>
<div
class="CharcellScrollArea__viewport"
tabindex="0"
role="region"
aria-label="everyone on highway 9"
>
<div class="CharcellScrollArea__clip">
<div class="CharcellScrollArea__rows">
<div class="CharcellScrollArea__columns">
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</div>
</div>
</div>
</div>
</div>
<!-- /component -->
</div>▴
▾
import { ScrollArea } from 'charcell/react';
export function ScrollAreaExample() {
return (
<div style={{ display: 'grid', height: 'calc(var(--charcell-row) * 8)' }}>
<ScrollArea
orientation="horizontal"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style={{ whiteSpace: 'pre' }}>01 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>02 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>03 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>04 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>05 bolus</div>
<div style={{ whiteSpace: 'pre' }}>06 nestor</div>
<div style={{ whiteSpace: 'pre' }}>07 suzi</div>
<div style={{ whiteSpace: 'pre' }}>08 father torque</div>
<div style={{ whiteSpace: 'pre' }}>09 darrel</div>
<div style={{ whiteSpace: 'pre' }}>10 emmet</div>
<div style={{ whiteSpace: 'pre' }}>11 todd newlan</div>
<div style={{ whiteSpace: 'pre' }}>12 miranda wood</div>
<div style={{ whiteSpace: 'pre' }}>13 quohog</div>
<div style={{ whiteSpace: 'pre' }}>14 horace</div>
<div style={{ whiteSpace: 'pre' }}>15 mavis</div>
<div style={{ whiteSpace: 'pre' }}>16 the chief</div>
<div style={{ whiteSpace: 'pre' }}>17 officer floyd</div>
<div style={{ whiteSpace: 'pre' }}>18 ricky myran</div>
<div style={{ whiteSpace: 'pre' }}>19 uncle pete</div>
<div style={{ whiteSpace: 'pre' }}>20 little todd</div>
<div style={{ whiteSpace: 'pre' }}>21 doreen schmorley</div>
<div style={{ whiteSpace: 'pre' }}>22 the unknown avenger</div>
<div style={{ whiteSpace: 'pre' }}>23 the boom-boom brothers</div>
<div style={{ whiteSpace: 'pre' }}>24 professor schmetterling</div>
<div style={{ whiteSpace: 'pre' }}>25 a cavefish</div>
<div style={{ whiteSpace: 'pre' }}>26 a vulture</div>
<div style={{ whiteSpace: 'pre' }}>27 a rottwheeler</div>
<div style={{ whiteSpace: 'pre' }}>28 the derby announcer</div>
<div style={{ whiteSpace: 'pre' }}>29 the news anchor</div>
<div style={{ whiteSpace: 'pre' }}>30 mrs. corley</div>
<div style={{ whiteSpace: 'pre' }}>31 the factory guard</div>
<div style={{ whiteSpace: 'pre' }}>32 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>33 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>34 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>35 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>36 bolus</div>
<div style={{ whiteSpace: 'pre' }}>37 nestor</div>
<div style={{ whiteSpace: 'pre' }}>38 suzi</div>
<div style={{ whiteSpace: 'pre' }}>39 father torque</div>
<div style={{ whiteSpace: 'pre' }}>40 darrel</div>
</ScrollArea>
</div>
);
}▴
▾
<script setup lang="ts">
import { ScrollArea } from 'charcell/vue';
</script>
<template>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
orientation="horizontal"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>
</template>▴
▾
<script lang="ts">
import { ScrollArea } from 'charcell/svelte';
</script>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
orientation="horizontal"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>▴
▾
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<!-- component: ScrollAreaDriver (behavior not included) -->
<div
class="CharcellScrollArea CharcellScrollArea--stepped CharcellScrollArea--horizontal CharcellScrollArea--overscroll-none CharcellScrollArea--fill"
>
<div
class="CharcellScrollArea__viewport"
tabindex="0"
role="region"
aria-label="everyone on highway 9"
>
<div class="CharcellScrollArea__clip">
<div class="CharcellScrollArea__rows">
<div class="CharcellScrollArea__columns">
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</div>
</div>
</div>
</div>
<div class="CharcellScrollArea__vertical-bar" aria-hidden="true">
<div class="CharcellScrollArea__step">▴</div>
<div class="CharcellScrollArea__vertical-track">
<div class="CharcellScrollArea__vertical-thumb"></div>
</div>
<div class="CharcellScrollArea__step">▾</div>
</div>
<div
class="CharcellScrollArea__horizontal-bar CharcellScrollArea__horizontal-bar--fitting"
aria-hidden="true"
>
<div class="CharcellScrollArea__step"></div>
<div class="CharcellScrollArea__horizontal-track">
<div class="CharcellScrollArea__horizontal-thumb"></div>
</div>
<div class="CharcellScrollArea__step"></div>
</div>
</div>
<!-- /component -->
</div>▴
▾
import { ScrollArea } from 'charcell/react';
export function ScrollAreaExample() {
return (
<div style={{ display: 'grid', height: 'calc(var(--charcell-row) * 8)' }}>
<ScrollArea
orientation="both"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style={{ whiteSpace: 'pre' }}>01 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>02 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>03 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>04 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>05 bolus</div>
<div style={{ whiteSpace: 'pre' }}>06 nestor</div>
<div style={{ whiteSpace: 'pre' }}>07 suzi</div>
<div style={{ whiteSpace: 'pre' }}>08 father torque</div>
<div style={{ whiteSpace: 'pre' }}>09 darrel</div>
<div style={{ whiteSpace: 'pre' }}>10 emmet</div>
<div style={{ whiteSpace: 'pre' }}>11 todd newlan</div>
<div style={{ whiteSpace: 'pre' }}>12 miranda wood</div>
<div style={{ whiteSpace: 'pre' }}>13 quohog</div>
<div style={{ whiteSpace: 'pre' }}>14 horace</div>
<div style={{ whiteSpace: 'pre' }}>15 mavis</div>
<div style={{ whiteSpace: 'pre' }}>16 the chief</div>
<div style={{ whiteSpace: 'pre' }}>17 officer floyd</div>
<div style={{ whiteSpace: 'pre' }}>18 ricky myran</div>
<div style={{ whiteSpace: 'pre' }}>19 uncle pete</div>
<div style={{ whiteSpace: 'pre' }}>20 little todd</div>
<div style={{ whiteSpace: 'pre' }}>21 doreen schmorley</div>
<div style={{ whiteSpace: 'pre' }}>22 the unknown avenger</div>
<div style={{ whiteSpace: 'pre' }}>23 the boom-boom brothers</div>
<div style={{ whiteSpace: 'pre' }}>24 professor schmetterling</div>
<div style={{ whiteSpace: 'pre' }}>25 a cavefish</div>
<div style={{ whiteSpace: 'pre' }}>26 a vulture</div>
<div style={{ whiteSpace: 'pre' }}>27 a rottwheeler</div>
<div style={{ whiteSpace: 'pre' }}>28 the derby announcer</div>
<div style={{ whiteSpace: 'pre' }}>29 the news anchor</div>
<div style={{ whiteSpace: 'pre' }}>30 mrs. corley</div>
<div style={{ whiteSpace: 'pre' }}>31 the factory guard</div>
<div style={{ whiteSpace: 'pre' }}>32 ben throttle</div>
<div style={{ whiteSpace: 'pre' }}>33 maureen corley</div>
<div style={{ whiteSpace: 'pre' }}>34 malcolm corley</div>
<div style={{ whiteSpace: 'pre' }}>35 adrian ripburger</div>
<div style={{ whiteSpace: 'pre' }}>36 bolus</div>
<div style={{ whiteSpace: 'pre' }}>37 nestor</div>
<div style={{ whiteSpace: 'pre' }}>38 suzi</div>
<div style={{ whiteSpace: 'pre' }}>39 father torque</div>
<div style={{ whiteSpace: 'pre' }}>40 darrel</div>
</ScrollArea>
</div>
);
}▴
▾
<script setup lang="ts">
import { ScrollArea } from 'charcell/vue';
</script>
<template>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
orientation="both"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>
</template>▴
▾
<script lang="ts">
import { ScrollArea } from 'charcell/svelte';
</script>
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<ScrollArea
orientation="both"
overscroll="none"
label="everyone on highway 9"
fill
>
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</ScrollArea>
</div>▴
▾
<div style="display: grid; height: calc(var(--charcell-row) * 8)">
<!-- component: ScrollAreaDriver (behavior not included) -->
<div
class="CharcellScrollArea CharcellScrollArea--stepped CharcellScrollArea--both CharcellScrollArea--overscroll-none CharcellScrollArea--fill"
>
<div
class="CharcellScrollArea__viewport"
tabindex="0"
role="region"
aria-label="everyone on highway 9"
>
<div class="CharcellScrollArea__clip">
<div class="CharcellScrollArea__rows">
<div class="CharcellScrollArea__columns">
<div style="white-space: pre">01 ben throttle</div>
<div style="white-space: pre">02 maureen corley</div>
<div style="white-space: pre">03 malcolm corley</div>
<div style="white-space: pre">04 adrian ripburger</div>
<div style="white-space: pre">05 bolus</div>
<div style="white-space: pre">06 nestor</div>
<div style="white-space: pre">07 suzi</div>
<div style="white-space: pre">08 father torque</div>
<div style="white-space: pre">09 darrel</div>
<div style="white-space: pre">10 emmet</div>
<div style="white-space: pre">11 todd newlan</div>
<div style="white-space: pre">12 miranda wood</div>
<div style="white-space: pre">13 quohog</div>
<div style="white-space: pre">14 horace</div>
<div style="white-space: pre">15 mavis</div>
<div style="white-space: pre">16 the chief</div>
<div style="white-space: pre">17 officer floyd</div>
<div style="white-space: pre">18 ricky myran</div>
<div style="white-space: pre">19 uncle pete</div>
<div style="white-space: pre">20 little todd</div>
<div style="white-space: pre">21 doreen schmorley</div>
<div style="white-space: pre">22 the unknown avenger</div>
<div style="white-space: pre">23 the boom-boom brothers</div>
<div style="white-space: pre">24 professor schmetterling</div>
<div style="white-space: pre">25 a cavefish</div>
<div style="white-space: pre">26 a vulture</div>
<div style="white-space: pre">27 a rottwheeler</div>
<div style="white-space: pre">28 the derby announcer</div>
<div style="white-space: pre">29 the news anchor</div>
<div style="white-space: pre">30 mrs. corley</div>
<div style="white-space: pre">31 the factory guard</div>
<div style="white-space: pre">32 ben throttle</div>
<div style="white-space: pre">33 maureen corley</div>
<div style="white-space: pre">34 malcolm corley</div>
<div style="white-space: pre">35 adrian ripburger</div>
<div style="white-space: pre">36 bolus</div>
<div style="white-space: pre">37 nestor</div>
<div style="white-space: pre">38 suzi</div>
<div style="white-space: pre">39 father torque</div>
<div style="white-space: pre">40 darrel</div>
</div>
</div>
</div>
</div>
<div class="CharcellScrollArea__vertical-bar" aria-hidden="true">
<div class="CharcellScrollArea__step">▴</div>
<div class="CharcellScrollArea__vertical-track">
<div class="CharcellScrollArea__vertical-thumb"></div>
</div>
<div class="CharcellScrollArea__step">▾</div>
</div>
<div
class="CharcellScrollArea__horizontal-bar CharcellScrollArea__horizontal-bar--fitting"
aria-hidden="true"
>
<div class="CharcellScrollArea__step"></div>
<div class="CharcellScrollArea__horizontal-track">
<div class="CharcellScrollArea__horizontal-thumb"></div>
</div>
<div class="CharcellScrollArea__step"></div>
</div>
</div>
<!-- /component -->
</div>▴
▾
as text
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus ▾
01 ben throttle 02 maureen corley 03 malcolm corley 04 adrian ripburger 05 bolus
01 ben throttle 02 maureen corley 03 malcolm corley
01 ben throttle 02 maureen corley 03 malcolm corley 04 adrian ripburger ◂ ▸
01 ben throttle 02 maureen corley 03 malcolm corley 04 adrian ripburger ◂ ▸
01 ben throttle 02 maureen corley 03 malcolm corley 04 adrian ripburger ◂ ▸
01 ben throttle 02 maureen corley 03 malcolm corley 04 adrian ripburger ◂ ▸
01 ben throttle 02 maureen corley 03 malcolm corley 04 adrian ripburger ◂ ▸
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger ▾ ◂ ▸
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger ▾ ◂ ▸
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger ▾ ◂ ▸
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger ▾ ◂ ▸
01 ben throttle ▴ 02 maureen corley 03 malcolm corley 04 adrian ripburger ▾ ◂ ▸
props
- scrolling'stepped' | 'fluid'= 'stepped'
steppedpaints the content at whole rows and columns;fluidas the browser scrolls it.- scrollbar'cells' | 'hidden' | 'native'= 'cells'
cellsdraws the scrollbar in cells;hiddendraws none;nativeleaves the browser's.- orientation'vertical' | 'horizontal' | 'both'= 'vertical'
- The axes that scroll.
- overscroll'auto' | 'contain' | 'none'= 'auto'
containkeeps a scroll at the end from moving the page;nonealso stops the platform's bounce.- labelstring
- The region's accessible name.
- focusableboolean= true
- A named region and a tab stop;
falseinside a widget that keeps focus itself, as a listbox or a menu, whose active item the area keeps in view. - contentPropsobject
- The attributes of the element that holds the content, for a widget the area sits in whose role belongs on its items' own parent (a menu's, a listbox's), so nothing of the area's comes between them. The element draws no focus cue: the widget's active item carries the keyboard position.
- fillboolean
- Takes the container's box: grows in a flex or grid layout, and takes the full height of a block that has one.
slots
in react, the default slot is children and each named slot a prop of its name, a function where the slot hands values; in vue, a slot; in svelte, a snippet.
- default
- The content that scrolls.
▴
▾