What Is It?
Bare Bones is a medium-sized CSS file packing quite the punch. It can help you build robust and responsive sites that look beautiful on any device. Bare Bones is built on three core principles:
Sturdy flex grid
Using CSS's flex property gives you the ability of a flex item to alter its dimensions to consume the space around it. No more float-based layouts!
Responsive down to mobile
Targeting the unpredictability of screen sizes, the row and column structure is a fully responsive layout, looking perfect on all devices.
Lovely UI component kit
Providing basic interface elements that have a modern look and feel, save development time, offer plenty of options, and fit nicely within all devices.
Container Size Options
Bare Bones gives your three container options for a greater degree of customization and to suit your project's layout needs. The default container is .flex-wrap which provides a standard responsive feel. There is a thinner option of .flex-wrap-narrow for a layout encumbering far less screen realestate and may be ideal for websites with simpler and minimalist content structures such as a blog. The last option is .flex-row-full which is a container always set to 95% of the viewport which provides a full width layout in any situation.
Give it a shot
- .flex-wrap
- .flex-wrap-full
- .flex-wrap-narrow
The Grid
UI Components
Buttons
Button classes can be applied to
<input>,
<a>, and
<button>.
Every button requires the flex-btn class to work. After that, get creative with the available variety classes for a nice finishing touch.
Primary class options:
flex-btn-full
flex-btn-full-sm
flex-btn-(a size)
btn-frame
btn-round
btn-rounder
btn-flat
bdr-heavy
Color options: every button type uses the
bg-(a color) class for a background color. The exception is .
btn-frame which requires a border color using bdr-(a border color)
default,
grey,
blue,
darkblue,
green,
yellow,
red,
black
Button Markup
<!-- Standard button --><input type="submit" class="flex-btn bg-default"/><!-- Button colors --><input type="submit" class="flex-btn bg-black"/><input type="submit" class="flex-btn bg-blue"/><!-- Round buttons --><input type="submit" class="flex-btn btn-round bg-yellow"/><input type="submit" class="flex-btn btn-round bg-green"/><!-- flat buttons --><input type="submit" class="flex-btn btn-flat bg-darkblue"/><input type="submit" class="flex-btn btn-flat bg-red"/><!-- Border only buttons --><input type="submit" class="flex-btn btn-round btn-frame bdr-grey"/><input type="submit" class="flex-btn btn-round btn-frame bdr-yellow bdr-heavy"/><!-- Button sizes --><input type="submit" class="flex-btn-xs bg-grey"/><input type="submit" class="flex-btn-sm bg-darkblue"/><input type="submit" class="flex-btn-lrg bg-green"/><input type="submit" class="flex-btn-xl bg-yellow"/><!-- Full width buttons--><input type="submit" class="flex-btn-full bg-green"/><input type="submit" class="flex-btn-full-sm bg-red"/><!-- Button variations --><input type="submit" class="flex-btn-sm btn-flat bg-red"/><input type="submit" class="flex-btn-lrg btn-round btn-frame bdr-yellow"/><input type="submit" class="flex-btn-xl btn-flat btn-frame bdr-blue"/>
Forms
For the <form> tag, simply apply the flex-form class.
Form class options:
form-fill
For
<input>,
<select>, and
<textarea> you'll need to apply the flex-input class.
In addition, <textarea> required the ta-default class.
For
<radio> and
<checkbox> you'll need to apply either the
radio or
checbox class.
Getting Started
Bare Bones is so light-weight and quick to implement into any new or existing website. All you need is a parent wrapper class (see options below), one or more child rows, and within the rows, any number of columns that equate to 100. Each column class is prefixed with a "flex-c-" abbreviated for flex column and finally concatenated with its percent-based width.
Here is what a basic set up looks like.
Media Queries
Bare Bones uses a grand total of three media queries to construct the scalable grid. This sets up an ideal situation for a reliable and consistent website that scales effortlessly from desktop down to mobile. Bare Bones targets media queries using a min width specifier and only modifies that parent flex-wrap class. So while the main container is adjusting to the viewport, the percent-based columns respond wonderfully to their parent.
License & Log
Bare Bones (currently v1.0) is currently available for use on GitHub. The whole framework is free to use under the open-source MIT license. I'm very excited about the possibilities with CSS flex and would love to have a small community of contributors to Bare Bones!
Download