# Modules

mini.css uses modules as its base building blocks. Each module contains one or more components that affect the same part of the user experience. Below you can see a quick overview of all the modules that compose mini.css.

## Core

The core module contains basic reset and fix rules, based on Normalize.css v5.0.0, along with lots of custom typography rules. Most textual HTML5 elements are styled by this module, so you can start writing your pages immediately without worrying about font families, weights, sizes, line heights, paddings and the like. More specifically, the core module contains:

- General typography rules
- Styling for headings
- Styling for common textual elements
- Styling for lists
- Rules for image responsiveness and captions

See more

## Grid

The grid module provides you with a modern, responsive grid system based on the Flexible Layout Module (commonly known as flexbox). The structure of the grid is simple and logical, allowing you to quickly build your pages from scratch. Setting the layout for a page is easy and will behave the way you want them to on mobile devices and smaller screens. More specifically, the grid module contains:

- Containers, rows and columns for layout
- Classes for defining screen-specific layouts
- Classes for predefined layouts
- Classes for content offsetting
- Classes for content reordering
- Layout examples for implementing the media object pattern

See more

## Input Control

The input_control module contains rules that affect forms, input elements, buttons, checkboxes and radio buttons. All of these elements's styles are predefined, allowing you to create modern, responsive forms quickly. Layout alternatives are also provided if you want your forms to look a certain way. More specifically, the input_control module contains:

- Styling for forms and input elements
- Styling for checkboxes and radio buttons
- Styling and grouping classes for buttons
- Classes for creating switches
- Workarounds for styling file upload buttons

See more

## Navigation

The navigation module seeks to remedy the problems of vertical and horizontal navigation design paradigms, by combining the two for a better presentational effect. HTML5 navigational elements are at the heart of the module, allowing you to quickly build your navigation menus. More specifically, the navigation module contains:

- Styling for headers, logos and header links
- Styling for navigation bars
- Classes for creating responsive drawers
- Styling for footers
- Classes for making headers and footers sticky

See more

## Table

The table module provides styling and responsiveness for tables. Simple rules and accessible design paradigms have been used to make creating tables quick and easy. Large tables will collapse to cards when on smaller devices or, if you don't want that, they can be locked into their default, desktop view. More specifically, the table module contains:

- Styling for tables and built-in responsiveness
- Classes for creating scrollable tables
- Classes for creating horizontal tables
- Classes for creating table variants and matrices

See more

## Card

The card module provides you with modern, responsive, general-purpose containers for your page's contents. They are very easy to use and their structure is really simple and versatile. Layouts will respond to smaller screens, realigning the cards in a manner that makes your page mobile-friendly. More specifically, the card module contains:

- Classes for creating card-based layouts
- Classes for creating card sections and adding media
- Classes for creating card variants and making cards fluid
- Classes for creating card color variants

See more

## Tab

The tab module aims to combine multiple components and design paradigms, like collapses, accordions, carousels and tabs, into one general-purpose component. Tabs are very simple in structure, responsive on mobile and they allow for layout customization so that you can turn them into accordions or collapses whenever you want. More specifically, the tab module contains:

- Classes for creating tab-based layouts
- Classes for creating stacked tabs, accordions and collapses

See more

## Contextual

The contextual module provides you with simple tags, marks and highlights for your pages, allowing you to easily emphasize parts of your text. Contextual toasts, tooltips and modals are also provided, aiming to help deliver important information to users. HTML5 elements and simple rules are used in order to make important messages and pieces of content stand out easily. More specifically, the contextual module contains:

- Styling for highlighted text
- Classes for creating toast messages
- Classes for creating hover-over tooltips
- Classes for creating modal dialogs

See more

## Progress

The progress module gives you full control over the presentation of progress and loading on your pages. Apart from progress bars and color variants for them, spinner elements are provided to help communicate that something is loading. More specifically, the progress module contains:

- Styling for progress bars
- Classes for creating progress bar variants
- Classes for creating donut spinners
- Classes for creating donut spinner variants

See more

## Utility

The utility module contains all the utilities and helper classes that you might want when designing a website or application. They solve common design problems efficiently and provide you with generic rules you can easily apply everywhere. More specifically, the utility module contains:

- Visibility helpers for hiding elements
- Classes for creating generic borders and shadows
- Classes for responsive sizing and spacing
- Responsive visibility helpers for hiding elements
- Classes for creating breadcrumbs
- Classes for creating close icons

See more