Inspired by Apple's summary slides and bento.me
<script type="module">
import BentoGrid from "https://cdn.jsdelivr.net/npm/@bentogrid/core@1.1.0/BentoGrid.min.js";
</script>
npm i @bentogrid/core
import BentoGrid from "@bentogrid/core";
<div class="bentogrid">
<div data-bento="1x1"></div>
<div data-bento="2x2"></div>
<div data-bento="2x1"></div>
<!-- Add elements or fillers -->
</div>
const myBento = new BentoGrid({
// Add configuration options
});
data-bento="2x3"
.
divs
will be created.
.bento-filler
when they are visible.
#bentogrid > *[data-bento] {
@apply bg-sand-200;
}
#bentogrid > * {
@apply bg-sand-200;
}
#bentogrid .bento-filler {
@apply bg-black;
}
<div id='bentogrid'>
<div data-bento='2x2'></div>
...
<div class='bg-water-300'></div>
<div class='bg-water-600'></div>
<div class='bg-water-900'></div>
</div>
target
string | HTMLElement
'.bentogrid'
cellGap
number
aspectRatio
number
1/1
balanceFillers
boolean
minCellWidth
number
100
columns
number
breakpoints
Object.<number, Breakpoint>
breakpointReference
string
'target'
cellGap
number
aspectRatio
number
minCellWidth
number
columns
number
Hint: Further documentation is coming soon.