@visual-framework/vf-stack

3.0.0 • Public • Published

Stack component

npm version

About

This sets the vertical spacing of child components.

Usage

Most vf-core components come without any margin spacing to avoid adding margins where not needed. Instead vertical spacing is controlled by vf-stack.

Where vertical spacing is required withing a component, the vf-stack class name to existing containers (like vf-hero) or containers you create yourself in your codebase.

Variants

We use CSS custom properties to control this vertical rhythm. For browsers that do not support CSS custom properties (IE 11) we provide a default value of 1rem so that child components get some spacing. This value is overridden by browsers that understand CSS custom properties.

variant name description
200 gives the vertical rhythm equal spacing of .5rem
400 gives the vertical rhythm equal spacing of 1rem
500 gives the vertical rhythm equal spacing of 1.25rem
600 gives the vertical rhythm equal spacing of 1.5rem
800 gives the vertical rhythm equal spacing of 2rem
1200 gives the vertical rhythm equal spacing of 3rem
1600 gives the vertical rhythm equal spacing of 4rem

Even though the vf-stack layout has a default spacing design token applied as a CSS custom property fallback it is good practice in the system to declare the vf-stack spacing class name in your projects.

<div class="vf-stack">...</div>

<div class="vf-stack vf-stack--400">...</div>

As we are using CSS custom properties we can also use a custom value by creating the custom property --vf-stack-margin--custom either in your stylesheet, or in your HTML.

<div class="vf-stack vf-stack--custom" style="--vf-stack-margin--custom: 3em;">
  <div class="vf-box vf-box--normal vf-box-theme--primary">...</div>
  <div class="vf-box vf-box--normal vf-box-theme--primary">...</div>
  <div class="vf-box vf-box--normal vf-box-theme--primary">...</div>
</div>

Install

This repository is distributed with [npm][https://www.npmjs.com/]. After [installing npm][https://www.npmjs.com/get-npm] and yarn, you can install vf-stack with this command.

$ yarn add --dev @visual-framework/vf-stack

Sass/CSS

If your component uses Sass:

The source files included are written in Sass (scss) You can simply point your sass include-path at your node_modules directory and import it like this.

@import "@visual-framework/vf-stack/index.scss";

Make sure you import Sass requirements along with the modules. You can use a project boilerplate or the vf-sass-starter

Help

Readme

Keywords

Package Sidebar

Install

npm i @visual-framework/vf-stack

Weekly Downloads

368

Version

3.0.0

License

Apache 2.0

Unpacked Size

60.3 kB

Total Files

28

Last publish

Collaborators

  • bhushan-ebi
  • pacope92
  • ebiwebdev
  • sandykadam
  • khawkins98