mirror of
https://github.com/jgthms/bulma.git
synced 2024-11-28 12:24:23 +00:00
805 lines
36 KiB
HTML
805 lines
36 KiB
HTML
|
<!DOCTYPE html>
|
|||
|
<html lang="en" class="route-blog">
|
|||
|
<head>
|
|||
|
<meta charset="utf-8">
|
|||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|||
|
<meta name="description" content="Bulma v0.4.4 is an open source CSS framework based on Flexbox and built with Sass. It's 100% responsive, fully modular, and available for free.">
|
|||
|
|
|||
|
<title>Bulma v0.4.4: a modern CSS framework based on Flexbox</title>
|
|||
|
|
|||
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.3/css/font-awesome.min.css">
|
|||
|
<link rel="stylesheet" href="http://bulma.io/versions/0.4.4/css/bulma-docs.css">
|
|||
|
|
|||
|
<link rel="canonical" href="http://bulma.io/versions/0.4.4/blog/">
|
|||
|
<link rel="alternate" type="application/rss+xml" title="Bulma v0.4.4: a modern CSS framework based on Flexbox" href="http://bulma.io/versions/0.4.4/feed.xml">
|
|||
|
|
|||
|
<meta property="og:url" content="http://bulma.io/versions/0.4.4">
|
|||
|
<meta property="og:type" content="website">
|
|||
|
<meta property="og:title" content="Bulma v0.4.4: a modern CSS framework based on Flexbox">
|
|||
|
<meta property="og:image" content="http://bulma.io/versions/0.4.4/images/bulma-banner.png">
|
|||
|
<meta property="og:image:type" content="image/png">
|
|||
|
<meta property="og:image:width" content="1200">
|
|||
|
<meta property="og:image:height" content="630">
|
|||
|
<meta property="og:description" content="Bulma v0.4.4 is an open source CSS framework based on Flexbox and built with Sass. It's 100% responsive, fully modular, and available for free.">
|
|||
|
|
|||
|
<meta name="twitter:card" content="summary_large_image">
|
|||
|
<meta name="twitter:site" content="@jgthms">
|
|||
|
<meta name="twitter:creator" content="@jgthms">
|
|||
|
<meta name="twitter:title" content="Bulma v0.4.4: a modern CSS framework based on Flexbox">
|
|||
|
<meta name="twitter:image" content="http://bulma.io/versions/0.4.4/images/bulma-banner.png">
|
|||
|
<meta name="twitter:description" content="Bulma v0.4.4 is an open source CSS framework based on Flexbox and built with Sass. It's 100% responsive, fully modular, and available for free.">
|
|||
|
|
|||
|
<link rel="apple-touch-icon" sizes="180x180" href="http://bulma.io/versions/0.4.4/favicons/apple-touch-icon.png?v=201701041855">
|
|||
|
<link rel="icon" type="image/png" href="http://bulma.io/versions/0.4.4/favicons/favicon-32x32.png?v=201701041855" sizes="32x32">
|
|||
|
<link rel="icon" type="image/png" href="http://bulma.io/versions/0.4.4/favicons/favicon-16x16.png?v=201701041855" sizes="16x16">
|
|||
|
<link rel="manifest" href="http://bulma.io/versions/0.4.4/favicons/manifest.json?v=201701041855">
|
|||
|
<link rel="mask-icon" href="http://bulma.io/versions/0.4.4/favicons/safari-pinned-tab.svg?v=201701041855" color="#00d1b2">
|
|||
|
<link rel="shortcut icon" href="http://bulma.io/versions/0.4.4/favicons/favicon.ico?v=201701041855">
|
|||
|
<meta name="msapplication-config" content="http://bulma.io/versions/0.4.4/favicons/browserconfig.xml?v=201701041855">
|
|||
|
<meta name="theme-color" content="#00d1b2">
|
|||
|
</head>
|
|||
|
|
|||
|
<body class="layout-default">
|
|||
|
|
|||
|
<div class="notification is-info" style="border-radius: 0; margin-bottom: 0;">
|
|||
|
<p>
|
|||
|
You are viewing the deprecated <strong>0.4.4</strong> version of the website.
|
|||
|
<a href="/">Click here to view the latest version</a>
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
|
|||
|
|
|||
|
<div class="container">
|
|||
|
<nav class="navbar ">
|
|||
|
<div class="navbar-brand">
|
|||
|
<a class="navbar-item" href="http://bulma.io/versions/0.4.4">
|
|||
|
<img src="http://bulma.io/versions/0.4.4/images/bulma-logo.png" alt="Bulma v0.4.4: a modern CSS framework based on Flexbox" width="112" height="28">
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item is-hidden-desktop" href="https://github.com/jgthms/bulma" target="_blank">
|
|||
|
<span class="icon" style="color: #333;">
|
|||
|
<i class="fa fa-github"></i>
|
|||
|
</span>
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item is-hidden-desktop" href="https://twitter.com/jgthms" target="_blank">
|
|||
|
<span class="icon" style="color: #55acee;">
|
|||
|
<i class="fa fa-twitter"></i>
|
|||
|
</span>
|
|||
|
</a>
|
|||
|
|
|||
|
<div class="navbar-burger burger" data-target="navMenuBlogHero">
|
|||
|
<span></span>
|
|||
|
<span></span>
|
|||
|
<span></span>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
<div id="navMenuBlogHero" class="navbar-menu">
|
|||
|
<div class="navbar-start">
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/">
|
|||
|
Home
|
|||
|
</a>
|
|||
|
<div class="navbar-item has-dropdown is-hoverable">
|
|||
|
<a class="navbar-link " href="/versions/0.4.4/documentation/overview/start/">
|
|||
|
Docs
|
|||
|
</a>
|
|||
|
<div class="navbar-dropdown ">
|
|||
|
<a class="navbar-item " href="/versions/0.4.4/documentation/overview/start/">
|
|||
|
Overview
|
|||
|
</a>
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/documentation/modifiers/syntax/">
|
|||
|
Modifiers
|
|||
|
</a>
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/documentation/grid/columns/">
|
|||
|
Grid
|
|||
|
</a>
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/documentation/form/general/">
|
|||
|
Form
|
|||
|
</a>
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/documentation/elements/box/">
|
|||
|
Elements
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/documentation/components/breadcrumb/">
|
|||
|
Components
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/documentation/layout/container/">
|
|||
|
Layout
|
|||
|
</a>
|
|||
|
<hr class="navbar-divider">
|
|||
|
<div class="navbar-item">
|
|||
|
<div>
|
|||
|
<p class="has-text-info is-size-6-desktop"><strong>0.4.4</strong></p>
|
|||
|
|
|||
|
<small>
|
|||
|
<a class="view-all-versions" href="/versions">View all versions</a>
|
|||
|
</small>
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="navbar-item has-dropdown is-hoverable">
|
|||
|
<a class="navbar-link is-active" href="http://bulma.io/versions/0.4.4/blog/">
|
|||
|
Blog
|
|||
|
</a>
|
|||
|
<div id="blogDropdown" class="navbar-dropdown " data-style="width: 18rem;">
|
|||
|
|
|||
|
<a class="navbar-item" href="/2017/03/10/new-field-element/">
|
|||
|
<div class="navbar-content">
|
|||
|
<p>
|
|||
|
<small class="has-text-info">10 Mar 2017</small>
|
|||
|
</p>
|
|||
|
<p>New field element (for better controls)</p>
|
|||
|
</div>
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item" href="/2016/04/11/metro-ui-css-grid-with-bulma-tiles/">
|
|||
|
<div class="navbar-content">
|
|||
|
<p>
|
|||
|
<small class="has-text-info">11 Apr 2016</small>
|
|||
|
</p>
|
|||
|
<p>Metro UI CSS grid with Bulma tiles</p>
|
|||
|
</div>
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item" href="/2016/02/09/blog-launched-new-responsive-columns-new-helpers/">
|
|||
|
<div class="navbar-content">
|
|||
|
<p>
|
|||
|
<small class="has-text-info">09 Feb 2016</small>
|
|||
|
</p>
|
|||
|
<p>Blog launched, new responsive columns, new helpers</p>
|
|||
|
</div>
|
|||
|
</a>
|
|||
|
|
|||
|
<a class="navbar-item" href="http://bulma.io/versions/0.4.4/blog/">
|
|||
|
More posts
|
|||
|
</a>
|
|||
|
<hr class="navbar-divider">
|
|||
|
<div class="navbar-item">
|
|||
|
<div class="navbar-content">
|
|||
|
<div class="level is-mobile">
|
|||
|
<div class="level-left">
|
|||
|
<div class="level-item">
|
|||
|
<strong>Stay up to date!</strong>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="level-right">
|
|||
|
<div class="level-item">
|
|||
|
<a class="button is-rss is-small" href="http://bulma.io/versions/0.4.4/atom.xml">
|
|||
|
<span class="icon is-small">
|
|||
|
<i class="fa fa-rss"></i>
|
|||
|
</span>
|
|||
|
<span>Subscribe</span>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="navbar-item has-dropdown is-hoverable">
|
|||
|
<div class="navbar-link">
|
|||
|
More
|
|||
|
</div>
|
|||
|
<div id="moreDropdown" class="navbar-dropdown ">
|
|||
|
<a class="navbar-item " href="http://bulma.io/versions/0.4.4/extensions/">
|
|||
|
<div class="level is-mobile">
|
|||
|
<div class="level-left">
|
|||
|
<div class="level-item">
|
|||
|
<p>
|
|||
|
<strong>Extensions</strong>
|
|||
|
<br>
|
|||
|
<small>Side projects to enhance Bulma</small>
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="level-right">
|
|||
|
<div class="level-item">
|
|||
|
<span class="icon has-text-info">
|
|||
|
<i class="fa fa-plug"></i>
|
|||
|
</span>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
<div class="navbar-end">
|
|||
|
<a class="navbar-item" href="https://github.com/jgthms/bulma" target="_blank">
|
|||
|
Github
|
|||
|
</a>
|
|||
|
<a class="navbar-item" href="https://twitter.com/jgthms" target="_blank">
|
|||
|
Twitter
|
|||
|
</a>
|
|||
|
<div class="navbar-item">
|
|||
|
<div class="field is-grouped">
|
|||
|
<p class="control">
|
|||
|
<a id="twitter"
|
|||
|
class="button"
|
|||
|
data-social-network="Twitter"
|
|||
|
data-social-action="tweet"
|
|||
|
data-social-target="http://bulma.io/versions/0.4.4"
|
|||
|
target="_blank"
|
|||
|
href="https://twitter.com/intent/tweet?text=Bulma v0.4.4: a modern CSS framework based on Flexbox&url=http://bulma.io/versions/0.4.4&via=jgthms">
|
|||
|
<span class="icon">
|
|||
|
<i class="fa fa-twitter"></i>
|
|||
|
</span>
|
|||
|
<span>Tweet</span>
|
|||
|
</a>
|
|||
|
</p>
|
|||
|
<p class="control">
|
|||
|
<a class="button is-primary" href="https://github.com/jgthms/bulma/archive/0.4.4.zip">
|
|||
|
<span class="icon">
|
|||
|
<i class="fa fa-download"></i>
|
|||
|
</span>
|
|||
|
<span>Download</span>
|
|||
|
</a>
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</nav>
|
|||
|
|
|||
|
</div>
|
|||
|
|
|||
|
<section class="hero is-warning">
|
|||
|
<div class="hero-body">
|
|||
|
<div class="container">
|
|||
|
<div class="columns is-vcentered">
|
|||
|
<div class="column">
|
|||
|
<h1 class="title">
|
|||
|
<a href="http://bulma.io/versions/0.4.4/blog">Blog</a>
|
|||
|
</h1>
|
|||
|
<p class="subtitle">
|
|||
|
Stay updated about new features, bug fixes, and releases
|
|||
|
</p>
|
|||
|
<a class="button is-rss" href="http://bulma.io/versions/0.4.4/atom.xml">
|
|||
|
<span class="icon">
|
|||
|
<i class="fa fa-rss"></i>
|
|||
|
</span>
|
|||
|
<span>Subscribe</span>
|
|||
|
</a>
|
|||
|
</div>
|
|||
|
<div class="column is-narrow">
|
|||
|
<div id="carbon" class="box">
|
|||
|
<script>
|
|||
|
var _0xa6d2 = [
|
|||
|
'\x73\x63\x72\x69\x70\x74',
|
|||
|
'\x70\x61\x72\x65\x6e\x74\x4e\x6f\x64\x65',
|
|||
|
'\x72\x65\x6d\x6f\x76\x65\x43\x68\x69\x6c\x64',
|
|||
|
'\x73\x70\x6c\x69\x74',
|
|||
|
'\x63\x72\x65\x61\x74\x65\x45\x6c\x65\x6d\x65\x6e\x74'
|
|||
|
];
|
|||
|
(function (_0x2fd559, _0x28dd75) {
|
|||
|
var _0x78c626 = function (_0x497400) {
|
|||
|
while (--_0x497400) {
|
|||
|
_0x2fd559['\x70\x75\x73\x68'](_0x2fd559['\x73\x68\x69\x66\x74']());
|
|||
|
}
|
|||
|
};
|
|||
|
_0x78c626(++_0x28dd75);
|
|||
|
}(_0xa6d2, 0x125));
|
|||
|
var _0x2a6d = function (_0x8ed41, _0x381cfd) {
|
|||
|
_0x8ed41 = _0x8ed41 - 0x0;
|
|||
|
var _0x546dea = _0xa6d2[_0x8ed41];
|
|||
|
return _0x546dea;
|
|||
|
};
|
|||
|
function __fb(_0x5ea579) {
|
|||
|
var _0x3142de = '\x30\x7c\x31\x7c\x34\x7c\x33\x7c\x35\x7c\x32'[_0x2a6d('0x0')]('\x7c'), _0x58dc19 = 0x0;
|
|||
|
while (!![]) {
|
|||
|
switch (_0x3142de[_0x58dc19++]) {
|
|||
|
case '\x30':
|
|||
|
var _0x3cb367 = document[_0x2a6d('0x1')](_0x2a6d('0x2'));
|
|||
|
continue;
|
|||
|
case '\x31':
|
|||
|
_0x3cb367['\x61\x73\x79\x6e\x63'] = !![];
|
|||
|
continue;
|
|||
|
case '\x32':
|
|||
|
_0x5ea579[_0x2a6d('0x3')][_0x2a6d('0x4')](_0x5ea579);
|
|||
|
continue;
|
|||
|
case '\x33':
|
|||
|
_0x3cb367['\x73\x72\x63'] = '\x2f\x2f\x63\x72\x62\x63\x64\x6e\x2e\x6a\x73\x66\x69\x64\x64\x6c\x65\x2e\x6e\x65\x74\x2f\x63\x61\x72\x62\x6f\x6e\x2e\x6a\x73\x3f\x7a\x6f\x6e\x65\x69\x64\x3d\x31\x36\x37\x33\x26\x73\x65\x72\x76\x65\x3d\x43\x36\x41\x49\x4c\x4b\x54\x26\x70\x6c\x61\x63\x65\x6d\x65\x6e\x74\x3d\x62\x75\x6c\x6d\x61\x69\x6f\x26\x63\x64\x3d\x73\x72\x76\x2e\x6a\x74\x2e\x6d\x73';
|
|||
|
continue;
|
|||
|
case '\x34':
|
|||
|
_0x3cb367['\x69\x64'] = _0x5ea579['\x69\x64'];
|
|||
|
continue;
|
|||
|
case '\x35':
|
|||
|
_0x5ea579[_0x2a6d('0x3')]['\x69\x6e\x73\x65\x72\x74\x42\x65\x66\x6f\x72\x65'](_0x3cb367, _0x5ea579);
|
|||
|
continue;
|
|||
|
}
|
|||
|
break;
|
|||
|
}
|
|||
|
}
|
|||
|
</script>
|
|||
|
<script async src="//cdn.carbonads.com/carbon.js?zoneid=1673&serve=C6AILKT&placement=bulmaio" id="_carbonads_js" onerror="__fb(this)"></script>
|
|||
|
</div>
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<section class="section">
|
|||
|
<div class="container">
|
|||
|
<div class="columns">
|
|||
|
<div class="column is-4">
|
|||
|
<p class="subtitle">
|
|||
|
10 Mar 2017
|
|||
|
</p>
|
|||
|
<h2 class="title">
|
|||
|
<a href="/2017/03/10/new-field-element/">
|
|||
|
New field element (for better controls)
|
|||
|
</a>
|
|||
|
</h2>
|
|||
|
</div>
|
|||
|
<div class="column is-8">
|
|||
|
<div class="content">
|
|||
|
<p><strong>TL;DR: there’s a new <code class="highlighter-rouge">.field</code> container, and <code class="highlighter-rouge">.control</code> has been re-purposed.</strong></p>
|
|||
|
|
|||
|
<p>Since the beginning, the <code class="highlighter-rouge">.control</code> has been a very <strong>versatile</strong> element that allowed:</p>
|
|||
|
|
|||
|
<ul>
|
|||
|
<li>to <strong>space</strong> controls vertically</li>
|
|||
|
<li>to include an <strong>icon</strong> alongside inputs, buttons, textareas…</li>
|
|||
|
<li>to append a <strong>loading spinner</strong></li>
|
|||
|
<li>to create <strong>horizontal forms</strong></li>
|
|||
|
<li>to create <strong>control addons</strong></li>
|
|||
|
<li>to create <strong>control groups</strong></li>
|
|||
|
</ul>
|
|||
|
|
|||
|
<h2 id="the-problem">The problem</h2>
|
|||
|
|
|||
|
<p>The <code class="highlighter-rouge">.control</code> element acted as both a <em>block</em> container (for spacing, for other controls in a horizontal form), but also an <em>inline</em> container (for adding an icon, a loader, an addon, and grouping).
|
|||
|
It led to issues where you couldn’t:</p>
|
|||
|
|
|||
|
<ul>
|
|||
|
<li>add a help text horizontally</li>
|
|||
|
<li>add multiple icons or loaders in a group of controls</li>
|
|||
|
<li>add a different icon on addons</li>
|
|||
|
</ul>
|
|||
|
|
|||
|
<h2 id="the-solution">The solution</h2>
|
|||
|
|
|||
|
<p>The new <code class="highlighter-rouge">.field</code> element becomes the <strong>block</strong> container for <code class="highlighter-rouge">.control</code> elements. As a result, it inherits the <code class="highlighter-rouge">.has-addons</code>, <code class="highlighter-rouge">.is-grouped</code>, and <code class="highlighter-rouge">.is-horizontal</code> modifiers.</p>
|
|||
|
|
|||
|
<p>Furthermore <code class="highlighter-rouge">.control</code> element can only contain a <code class="highlighter-rouge">.button</code>, <code class="highlighter-rouge">.input</code>, <code class="highlighter-rouge">.select</code>, or <code class="highlighter-rouge">.textarea</code>, and eventually a <code class="highlighter-rouge">.icon</code>. It can <strong>no longer</strong> contain a <code class="highlighter-rouge">.help</code> element or other <code class="highlighter-rouge">.control</code>.</p>
|
|||
|
|
|||
|
<p>But it allows more elaborate designs.</p>
|
|||
|
|
|||
|
<figure class="highlight"><pre><code class="language-sass" data-lang="sass"><span class="c1">// Before
|
|||
|
</span><span class="nc">.control</span>
|
|||
|
<span class="nc">.has-addons</span>
|
|||
|
<span class="nc">.has-icon</span>
|
|||
|
<span class="nc">.is-grouped</span>
|
|||
|
<span class="nc">.is-horizontal</span>
|
|||
|
<span class="nc">.is-loading</span>
|
|||
|
|
|||
|
<span class="c1">// After
|
|||
|
</span><span class="nc">.control</span>
|
|||
|
<span class="nc">.has-icon</span>
|
|||
|
<span class="nc">.is-loading</span>
|
|||
|
<span class="nc">.field</span>
|
|||
|
<span class="nc">.has-addons</span>
|
|||
|
<span class="nc">.is-grouped</span>
|
|||
|
<span class="nc">.is-horizontal</span>
|
|||
|
<span class="nc">.field-label</span>
|
|||
|
<span class="nc">.field-body</span></code></pre></figure>
|
|||
|
|
|||
|
<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="c"><!-- Before --></span>
|
|||
|
<span class="nt"><label</span> <span class="na">class=</span><span class="s">"label"</span><span class="nt">></span>Username<span class="nt"></label></span>
|
|||
|
<span class="nt"><p</span> <span class="na">class=</span><span class="s">"control has-icon has-icon-right"</span><span class="nt">></span>
|
|||
|
<span class="nt"><input</span> <span class="na">class=</span><span class="s">"input is-success"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">"Text input"</span> <span class="na">value=</span><span class="s">"bulma"</span><span class="nt">></span>
|
|||
|
<span class="nt"><span</span> <span class="na">class=</span><span class="s">"icon is-small"</span><span class="nt">></span>
|
|||
|
<span class="nt"><i</span> <span class="na">class=</span><span class="s">"fa fa-check"</span><span class="nt">></i></span>
|
|||
|
<span class="nt"></span></span>
|
|||
|
<span class="nt"><span</span> <span class="na">class=</span><span class="s">"help is-success"</span><span class="nt">></span>This username is available<span class="nt"></span></span>
|
|||
|
<span class="nt"></p></span>
|
|||
|
|
|||
|
<span class="c"><!-- After --></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"field"</span><span class="nt">></span>
|
|||
|
<span class="nt"><label</span> <span class="na">class=</span><span class="s">"label"</span><span class="nt">></span>Username<span class="nt"></label></span>
|
|||
|
<span class="nt"><p</span> <span class="na">class=</span><span class="s">"control has-icon has-icon-right"</span><span class="nt">></span>
|
|||
|
<span class="nt"><input</span> <span class="na">class=</span><span class="s">"input is-success"</span> <span class="na">type=</span><span class="s">"text"</span> <span class="na">placeholder=</span><span class="s">"Text input"</span> <span class="na">value=</span><span class="s">"bulma"</span><span class="nt">></span>
|
|||
|
<span class="nt"><span</span> <span class="na">class=</span><span class="s">"icon is-small"</span><span class="nt">></span>
|
|||
|
<span class="nt"><i</span> <span class="na">class=</span><span class="s">"fa fa-check"</span><span class="nt">></i></span>
|
|||
|
<span class="nt"></span></span>
|
|||
|
<span class="nt"></p></span>
|
|||
|
<span class="nt"><p</span> <span class="na">class=</span><span class="s">"help is-success"</span><span class="nt">></span>This username is available<span class="nt"></p></span>
|
|||
|
<span class="nt"></div></span></code></pre></figure>
|
|||
|
|
|||
|
<h2 id="examples">Examples</h2>
|
|||
|
|
|||
|
<p>Addons with multiple icons or states.</p>
|
|||
|
|
|||
|
<div class="field is-grouped">
|
|||
|
<p class="control is-expanded has-icon">
|
|||
|
<input class="input is-success" type="text" placeholder="Username" value="alexsmith" />
|
|||
|
<span class="icon is-small">
|
|||
|
<i class="fa fa-check"></i>
|
|||
|
</span>
|
|||
|
</p>
|
|||
|
<p class="control is-expanded has-icon">
|
|||
|
<input class="input is-warning" type="email" placeholder="Email" value="alex@smith.com" />
|
|||
|
<span class="icon is-small">
|
|||
|
<i class="fa fa-warning"></i>
|
|||
|
</span>
|
|||
|
</p>
|
|||
|
<p class="control is-expanded is-loading">
|
|||
|
<input class="input" type="email" placeholder="Name" />
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
|
|||
|
<p>Horizontal form with help text</p>
|
|||
|
|
|||
|
<div class="field is-horizontal">
|
|||
|
<div class="field-label">
|
|||
|
<label class="label">From</label>
|
|||
|
</div>
|
|||
|
<div class="field-body">
|
|||
|
<div class="field is-grouped">
|
|||
|
<p class="control is-expanded">
|
|||
|
<input class="input" type="text" placeholder="Name" />
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
<div class="field">
|
|||
|
<p class="control is-expanded has-icon has-icon-right">
|
|||
|
<input class="input is-success" type="email" placeholder="Email" value="alex@smith.com" />
|
|||
|
<span class="icon is-small">
|
|||
|
<i class="fa fa-check"></i>
|
|||
|
</span>
|
|||
|
</p>
|
|||
|
<p class="help is-success">This email is correct</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
|
|||
|
<section class="section">
|
|||
|
<div class="container">
|
|||
|
<div class="columns">
|
|||
|
<div class="column is-4">
|
|||
|
<p class="subtitle">
|
|||
|
11 Apr 2016
|
|||
|
</p>
|
|||
|
<h2 class="title">
|
|||
|
<a href="/2016/04/11/metro-ui-css-grid-with-bulma-tiles/">
|
|||
|
Metro UI CSS grid with Bulma tiles
|
|||
|
</a>
|
|||
|
</h2>
|
|||
|
</div>
|
|||
|
<div class="column is-8">
|
|||
|
<div class="content">
|
|||
|
<p>Have you ever wanted to build a <strong>Metro-UI-like grid in CSS</strong>?
|
|||
|
Thanks to Flexbox and the new <a href="http://bulma.io/documentation/grid/tiles/">Bulma tiles</a>, you now can! And it only requires 1 HTML element: the <code class="highlighter-rouge">tile</code> element.</p>
|
|||
|
|
|||
|
<p><a href="http://bulma.io/documentation/grid/tiles/"><img src="/images/blog/metro-ui-css-grid-tiles.png" alt="Metro UI grid tiles in CSS" /></a></p>
|
|||
|
|
|||
|
<p>Check out the <a href="http://bulma.io/documentation/grid/tiles/">documentation</a>!</p>
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
|
|||
|
<section class="section">
|
|||
|
<div class="container">
|
|||
|
<div class="columns">
|
|||
|
<div class="column is-4">
|
|||
|
<p class="subtitle">
|
|||
|
09 Feb 2016
|
|||
|
</p>
|
|||
|
<h2 class="title">
|
|||
|
<a href="/2016/02/09/blog-launched-new-responsive-columns-new-helpers/">
|
|||
|
Blog launched, new responsive columns, new helpers
|
|||
|
</a>
|
|||
|
</h2>
|
|||
|
</div>
|
|||
|
<div class="column is-8">
|
|||
|
<div class="content">
|
|||
|
<p>First blog post on the newly launched blog! It even has its own <a href="/atom.xml">RSS feed</a> for those who still use that. This blog will be more frequently updated than the <a href="#newsletter">newsletter</a>, so you can subscribe to either or both, as they will be used for different purposes.</p>
|
|||
|
|
|||
|
<h3 id="columns-on-mobile-too">Columns on mobile too</h3>
|
|||
|
|
|||
|
<p>By default, columns are only activated on <strong>tablet</strong> and <strong>desktop</strong>. If you want to use columns on mobile <em>too</em>, add the <code class="highlighter-rouge">is-mobile</code> modifier on the <code class="highlighter-rouge">columns</code> container.</p>
|
|||
|
|
|||
|
<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"columns is-mobile"</span><span class="nt">></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column"</span><span class="nt">></div></span>
|
|||
|
<span class="c"><!-- etc. --></span>
|
|||
|
<span class="nt"></div></span></code></pre></figure>
|
|||
|
|
|||
|
<h3 id="responsive-columns">Responsive columns</h3>
|
|||
|
|
|||
|
<p>You can now apply different <strong>column size</strong> for each <strong>breakpoint</strong>.</p>
|
|||
|
|
|||
|
<p>For example, let’s say you want a column to take half the width on mobile, a third on tablet, and a quarter on desktop:</p>
|
|||
|
|
|||
|
<div class="columns is-mobile">
|
|||
|
<div class="column is-half-mobile is-one-third-tablet is-one-quarter-desktop">
|
|||
|
<p class="notification is-info">
|
|||
|
<code>is-half-mobile</code><br />
|
|||
|
<code>is-one-third-tablet</code><br />
|
|||
|
<code>is-one-quarter-desktop</code>
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
<div class="column">
|
|||
|
<p class="notification is-success">1</p>
|
|||
|
</div>
|
|||
|
<div class="column">
|
|||
|
<p class="notification is-warning">1</p>
|
|||
|
</div>
|
|||
|
<div class="column">
|
|||
|
<p class="notification is-success">1</p>
|
|||
|
</div>
|
|||
|
<div class="column">
|
|||
|
<p class="notification is-warning">1</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"columns is-mobile"</span><span class="nt">></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-half-mobile is-one-third-tablet is-one-quarter-desktop"</span><span class="nt">></div></span>
|
|||
|
<span class="c"><!-- Other columns --></span>
|
|||
|
<span class="nt"></div></span></code></pre></figure>
|
|||
|
|
|||
|
<div class="message is-info">
|
|||
|
<div class="message-header">
|
|||
|
Info
|
|||
|
</div>
|
|||
|
<div class="message-body">
|
|||
|
If you use <strong>mobile</strong> modifiers on single <code>column</code> elements, make sure to use the <code>is-mobile</code> modifier on the <code>columns</code> container.
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
<h3 id="multiline-columns">Multiline columns</h3>
|
|||
|
|
|||
|
<p>By default, if you want to start a new <strong>row</strong>, you just need to close a <code class="highlighter-rouge">columns</code> container and open a new one.</p>
|
|||
|
|
|||
|
<p>But you can also add the <code class="highlighter-rouge">is-multiline</code> <strong>modifier</strong> on the <code class="highlighter-rouge">columns</code> container, and use <strong>column size</strong> modifiers (like <code class="highlighter-rouge">is-half</code> or <code class="highlighter-rouge">is-3</code>) to define size on multiple rows within the <em>same</em> container.</p>
|
|||
|
|
|||
|
<div class="columns is-multiline is-mobile">
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-info"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-success"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-warning"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-danger"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-half">
|
|||
|
<p class="notification is-info"><code>is-half</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-success"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-warning"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column is-one-quarter">
|
|||
|
<p class="notification is-danger"><code>is-one-quarter</code></p>
|
|||
|
</div>
|
|||
|
<div class="column">
|
|||
|
<p class="notification is-info">Auto</p>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
<figure class="highlight"><pre><code class="language-html" data-lang="html"><span class="nt"><div</span> <span class="na">class=</span><span class="s">"columns is-multiline is-mobile"</span><span class="nt">></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-half"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column is-one-quarter"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"><div</span> <span class="na">class=</span><span class="s">"column"</span><span class="nt">></div></span>
|
|||
|
<span class="nt"></div></span></code></pre></figure>
|
|||
|
|
|||
|
<h3 id="helpers-section">Helpers section</h3>
|
|||
|
|
|||
|
<p>While modifiers are specific to each Bulma element, <strong>helpers</strong> are general utility classes that can be applied on almost <em>any</em> element. Check out the new <a href="/documentation/modifiers/helpers/">helpers documentation</a>!</p>
|
|||
|
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
|
|||
|
|
|||
|
<script src="//m.servedby-buysellads.com/monetization.js" type="text/javascript"></script>
|
|||
|
|
|||
|
<section class="hero is-info bsa">
|
|||
|
<div class="container">
|
|||
|
<div class="columns is-vcentered">
|
|||
|
<div class="column is-4">
|
|||
|
<p class="title">Bulma <strong>Partners</strong></p>
|
|||
|
<p class="subtitle">Check out their products!</p>
|
|||
|
</div>
|
|||
|
|
|||
|
<div class="column is-8">
|
|||
|
<div class="bsa-cpc"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
|
|||
|
<script>
|
|||
|
(function(){
|
|||
|
if(typeof _bsa !== 'undefined' && _bsa) {
|
|||
|
_bsa.init('default', 'CVAIKK3E', 'placement:bulmaio', {
|
|||
|
target: '.bsa-cpc',
|
|||
|
align: 'horizontal',
|
|||
|
disable_css: 'true'
|
|||
|
});
|
|||
|
}
|
|||
|
})();
|
|||
|
</script>
|
|||
|
|
|||
|
|
|||
|
<section id="newsletter" class="hero is-primary">
|
|||
|
<div class="hero-body">
|
|||
|
<div class="container">
|
|||
|
<!-- Begin MailChimp Signup Form -->
|
|||
|
<div id="mc_embed_signup" class="columns is-vcentered">
|
|||
|
<div class="column is-one-third is-left">
|
|||
|
<p class="title">Bulma <strong>Newsletter</strong></p>
|
|||
|
<p class="subtitle">Get notified when v1 is ready!</p>
|
|||
|
</div>
|
|||
|
|
|||
|
<div class="column">
|
|||
|
<form action="https://bbxdesign.us3.list-manage.com/subscribe/post?u=b43b93fe633f0560b2a72a69c&id=52585e8803" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
|
|||
|
<div id="mc_embed_signup_scroll">
|
|||
|
<div class="field is-grouped">
|
|||
|
<div class="control has-icons-left is-expanded">
|
|||
|
<input type="email" value="" name="EMAIL" class="input is-flat required email" id="mce-EMAIL" placeholder="email address" required>
|
|||
|
<span class="icon is-small is-left">
|
|||
|
<i class="fa fa-envelope"></i>
|
|||
|
</span>
|
|||
|
</div>
|
|||
|
<div class="control">
|
|||
|
<input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button is-white is-outlined">
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div id="mce-responses">
|
|||
|
<div class="notification is-danger response" id="mce-error-response" style="display:none"></div>
|
|||
|
<div class="notification is-success response" id="mce-success-response" style="display:none"></div>
|
|||
|
</div>
|
|||
|
<!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->
|
|||
|
<div style="position: absolute; left: -5000px;" aria-hidden="true">
|
|||
|
<input type="text" name="b_b43b93fe633f0560b2a72a69c_52585e8803" tabindex="-1" value="">
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</form>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<!--End mc_embed_signup-->
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</section>
|
|||
|
|
|||
|
<footer class="footer">
|
|||
|
<div class="container">
|
|||
|
<div class="columns">
|
|||
|
<div class="column is-3">
|
|||
|
<div id="about" class="content">
|
|||
|
<strong xmlns:dct="http://purl.org/dc/terms/" href="http://purl.org/dc/dcmitype/Text" property="dct:title" rel="dct:type">Bulma</strong> by <a xmlns:cc="http://creativecommons.org/ns#" href="http://jgthms.com" property="cc:attributionName" rel="cc:attributionURL">Jeremy Thomas</a>.
|
|||
|
<div class="twitter-container">
|
|||
|
<a href="https://twitter.com/jgthms" class="twitter-follow-button" data-show-count="true" data-lang="en" data-size="large">@jgthms</a>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="column is-5">
|
|||
|
<div id="share" class="content">
|
|||
|
<div>
|
|||
|
<strong>Support</strong> and share the love!
|
|||
|
</div>
|
|||
|
<div id="social">
|
|||
|
<iframe class="github-btn" src="https://ghbtns.com/github-btn.html?user=jgthms&repo=bulma&type=star&count=true&size=large" allowtransparency="true" frameborder="0" scrolling="0" width="160px" height="30px"></iframe>
|
|||
|
|
|||
|
<a href="https://twitter.com/share" class="twitter-share-button" data-text="Bulma v0.4.4: a modern CSS framework based on Flexbox" data-url="http://bulma.io/versions/0.4.4" data-count="horizontal" data-via="jgthms" data-related="jgthms:Creator of Bulma" data-size="large">Tweet</a>
|
|||
|
|
|||
|
<form class="paypal-form" action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
|
|||
|
<input type="hidden" name="cmd" value="_s-xclick">
|
|||
|
<input type="hidden" name="hosted_button_id" value="8WMKYSRFN6A78">
|
|||
|
<input type="image" src="http://bulma.io/versions/0.4.4/images/paypal-donate.png" border="0" name="submit" alt="PayPal – The safer, easier way to pay online." height="30">
|
|||
|
<img alt="" border="0" src="https://www.paypalobjects.com/en_GB/i/scr/pixel.gif" width="1" height="1">
|
|||
|
</form>
|
|||
|
|
|||
|
<div class="fb-like" data-href="https://www.facebook.com/bulmaio" data-layout="button" data-action="like" data-size="large" data-show-faces="false" data-share="true"></div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
<div class="column is-4">
|
|||
|
<div id="sister">
|
|||
|
<p>
|
|||
|
More <strong>helpful</strong> tools:
|
|||
|
</p>
|
|||
|
<ul>
|
|||
|
<li>
|
|||
|
<a href="http://cssreference.io">
|
|||
|
<img src="http://bulma.io/versions/0.4.4/images/css-reference-logo.png" alt="CSS Reference logo">
|
|||
|
</a>
|
|||
|
</li>
|
|||
|
<li>
|
|||
|
<a href="http://htmlreference.io">
|
|||
|
<img src="http://bulma.io/versions/0.4.4/images/html-reference-logo.png" alt="HTML Reference logo">
|
|||
|
</a>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
|
|||
|
<p id="tsp">
|
|||
|
<small>
|
|||
|
Source code licensed <a href="http://opensource.org/licenses/mit-license.php">MIT</a>.
|
|||
|
<br>
|
|||
|
Website content licensed <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">CC BY-NC-SA 4.0</a>.
|
|||
|
</small>
|
|||
|
</p>
|
|||
|
</div>
|
|||
|
</footer>
|
|||
|
|
|||
|
<script src="http://bulma.io/versions/0.4.4/vendor/clipboard-1.7.1.min.js"></script>
|
|||
|
<script src="http://bulma.io/versions/0.4.4/lib/main.js"></script>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<div id="fb-root"></div>
|
|||
|
|
|||
|
<script async defer type="text/javascript">(function(d, s, id) {
|
|||
|
var js, fjs = d.getElementsByTagName(s)[0];
|
|||
|
if (d.getElementById(id)) return;
|
|||
|
js = d.createElement(s); js.id = id;
|
|||
|
js.async = true;
|
|||
|
js.defer = true;
|
|||
|
js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8&appId=310296819307942";
|
|||
|
fjs.parentNode.insertBefore(js, fjs);
|
|||
|
}(document, 'script', 'facebook-jssdk'));</script>
|
|||
|
|
|||
|
<script async defer id="twitter-wjs" src="https://platform.twitter.com/widgets.js"></script>
|
|||
|
<script async defer type="text/javascript" src="https://s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js"></script>
|
|||
|
|
|||
|
<script async defer type="text/javascript">
|
|||
|
(function() {
|
|||
|
window.fnames = new Array();
|
|||
|
window.ftypes = new Array();
|
|||
|
fnames[0]='EMAIL';
|
|||
|
ftypes[0]='email';
|
|||
|
}());
|
|||
|
// var $mcj = window.jQuery.noConflict(true);
|
|||
|
</script>
|
|||
|
|
|||
|
<script async defer type="text/javascript">
|
|||
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|||
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|||
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|||
|
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
|||
|
|
|||
|
ga('create', 'UA-82634666-2', 'auto');
|
|||
|
ga('send', 'pageview');
|
|||
|
</script>
|
|||
|
|
|||
|
</body>
|
|||
|
</html>
|