Memo

CSS framework である Bulma を使ったサンプルページです。

導入

<head> タグの中に以下を記述します。

(このコードのハイライトには、highlight.js を使っています。Bulma の機能ではありません。)

<meta name="viewport" content="width=device-width, initial-scale=1">
<link ref="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.4/css/bulma.min.css">
<script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>

Section のHTMLコード

これ以降、Bulma の Section を使っていきます。Section は以下のように書きます。

<section class="section has-background-primary">
  <h2 class="title">セクションタイトル</h2>

  <div class="container">
    <h1 class="title">タイトル1</h1>
    <div class="box">
      Foo
    </div>
  </div>

  <div class="container">
    <h1 class="title">タイトル2</h1>
    <div class="content">
      Bar
    </div>
  </div>

  <div class="container">
    <h1 class="title">タイトル3</h1>
    <div class="box content">
      Baz
    </div>
  </div>

</section>

Section: Overview

ドキュメント: Overview | Bulma

Start

Classes

Modularity

Responsiveness

Colors

色もSASSの変数を使ってカスタマイズできる。


Functions

Mixins

Section: Customize

ドキュメント:Customize | Bulma

Comcepts

Variables

With Sass CLI

With webpack

Section: Modifiers

ドキュメント:Modifiers | Bulma

Syntax

Bulma の修飾用CSSクラスは、is- もしくは has- で始まる。


Helpers

ほとんどの要素に指定できるヘルパークラス

  • Float
  • Spacing
  • Other

Responsive helpers

デスクトップサイズ以上で display: flex になります(つまり横並びの表示になります)。( is-flex-desktopクラス )

foo
bar

以下は、デスクトップサイズ以下では表示されません。( is-hidden-touchクラス )

is-hidden-touch (幅1023px以内は表示されません)

Typography helpers

テキストのサイズと色を変更するクラス(viewport によって値を変えるクラスもある)

  • Size
  • Responsive size
  • Colors
  • Alignment
  • Responsive Alignment
  • Text transformation
  • Text weight

Hyelpers

Color helpers

Section: Columns

Basics

レスポンシブなカラムを作成する。

(1) ノーマル

First column
Second column
Third column
Fourth column

(2) is-mobile を付けた場合

  • スマートフォンでもスタックされず、横に並んだままになる。
First column
Second column
Third column
Fourth column

Sizes

Responsiveness

Nesting

Gap

Options

Section: Layout

  • header, main, footer タグ等と、どう組み合わせて使えばよいのか?

Container

Level

複数要素を水平に並べて表示できる。


Media Object

Hero

hero とは、full width banner のこと。

Primary bold title

Primary bold subtitle


Section

Footer

Tiles

Section: Form

General

This username is available

This email is invalid


Input

Textarea

Select

Checkbox

Radio

File

Section: Elements

Box

  • 白背景のエリアを作ることができる。
  • ここも box を使っている。どこでも使えて便利。
  • これは多用することになりそう。

Button

Content

<ul> はstyle が付かないようになっている。

同様に、よくあるスタイルが変更されている要素があるが、元のスタイルで使いたい場合は、contentクラスを持った要素で囲めばよい。


Delete

Icon


Image


Notification

Primar lorem ipsum dolor sit amet, consectetur adipiscing elit lorem ipsum dolor. Pellentesque risus mi, tempus quis placerat ut, porta nec nulla. Vestibulum rhoncus ac ex sit amet fringilla. Nullam gravida purus diam, et dictum felis venenatis efficitur. Sit amet, consectetur adipiscing elit
Primar lorem ipsum dolor sit amet, consectetur adipiscing elit lorem ipsum dolor. Pellentesque risus mi, tempus quis placerat ut, porta nec nulla. Vestibulum rhoncus ac ex sit amet fringilla. Nullam gravida purus diam, et dictum felis venenatis efficitur. Sit amet, consectetur adipiscing elit

Progress bars

Table

  • content クラスの中に入れなくてもよい。
One Two
Three Four
Five Six
Seven Eight
Nine Ten
Eleven Twelve

Tag

Title

Section: Components

Breadcrumb

Card

“There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.”

Jeff Atwood

Dropdown

Menu

Message

Modal


Navbar

本ページの先頭に付けてある。


Pagination

Panel

  • パネルといっても、少し特殊で複雑なコンポーネントである。
  • シンプルなエリアを作りたい場合は、パネルではなく boxクラスを使えばよい。

Tabs

foo bar