Mixins
Reusable CSS for creating custom elements
The OrbitCSS framework uses Sass mixins to avoid the tedious task of re-writing commonly used CSS declarations and to take advantage of being able to pass in arguments to create flexible mixins. You can use these same mixins to extend the framework further and create custom themes.
Responsive mixins
Four mixins that can be used to define styling for specific viewports. These are essentially just shortcuts for pre-defined media queries.
// Apply styling on mobile viewports. @include small { // Your CSS content } // Apply styling on medium viewports (tablet) and up. @include medium { // Your CSS content } // Apply styling on large viewports (laptops and small desktops) and up. @include large { // Your CSS content } // Apply styling on extra large viewports (most desktops). @include extra-large { // Your CSS content }
Element color
The element-color
mixin is used to build color variations for various modules including buttons, tags, and alerts. If the $color
parameter is not set then a default value will be calculated based on the $background
parameter using the getTextColor()
function.
// Syntax @mixin element-color($background, $border, $color: getTextColor($background)) // Example for adding a new button color modifier. .button { &.is-orange { @include element-color(#e28945, transparent); } }
Image box
The Image module creates the is-*-square
modifiers using the imageBoxSize
mixin. This accepts two parameters, one for the width of the box and one for the height. The height value will default to the width if omitted.
// Syntax @mixin imageBoxSize($width, $height: $width) // Example for creating an image box with a 2:1 ratio. .image { &.is-ratio-2-1 { @include imageBoxSize(600px, 300px); } }
Column size
The Grid module uses the column-size
mixin to create each of the column size modifiers.
// Syntax @mixin column-size($size, $max-size, $width, $screen) // Example for creating a column size modifier for 1/8 (12.5%) .column { @include column-size('is-one-eighth', 'full', 12.5%, ''); }