Context
A contextual panel, overlaying the main content, which can house a variety of actionable components.
Markup structure
Firstly, you need a trigger component, which is usually a Button. Wrap your trigger component and <div class="Context"> inside <div class="ContextContainer js-ContextContainer">. When .ContextContainer js-ContextContainer is clicked, an is-active class will be added, which activates the Context panel.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> You can also use a Link as your trigger component. The caret will always be centered on its x-axis and your Context panel will be positioned automatically.
<div class="ContextContainer js-ContextContainer">
<button class="Button" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> Adding content
There are no limitations restricting which components can be placed inside a Context component. Child components do not receive any style modifications when placed inside a Context component.
Below is an example with some ListItem components.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> You can add a Divider to separate groups of ListItem components.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> You can add a Divider to separate groups of ListItem components.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> You can add a Divider to separate groups of ListItem components.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> You can add a Loader to load while content is loading.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> Right-align
Firstly, you need a trigger component, which is usually a Button. Wrap your trigger component and <div class="Context"> inside <div class="ContextContainer js-ContextContainer">. When .ContextContainer js-ContextContainer is clicked, an is-active class will be added, which activates the Context panel.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div> Dropup
Firstly, you need a trigger component, which is usually a Button. Wrap your trigger component and <div class="Context"> inside <div class="ContextContainer js-ContextContainer">. When .ContextContainer js-ContextContainer is clicked, an is-active class will be added, which activates the Context panel.
<div class="ContextContainer js-ContextContainer is-active">
<button class="Button is-active" type="button">Toggle</button>
<div class="Context">
// Context content goes here
</div>
</div>