リブート
Reboot は要素固有の CSS 変更を 1 つのファイルにまとめたもので、Bootstrap をキックスタートして、構築するためのエレガントで一貫性のあるシンプルなベースラインを提供します。
アプローチ
Reboot は Normalize に基づいて構築され、要素セレクターのみを使用して、やや独断的なスタイルを持つ多くの HTML 要素を提供します。追加のスタイリングは、クラスでのみ行われます。たとえば<table>
、よりシンプルなベースラインのためにいくつかのスタイルを再起動し、後で 、 などを提供.table
し.table-bordered
ます。
Reboot で何をオーバーライドするかを選択するガイドラインと理由は次のとおりです。
- コンポーネントのスケーラブルな間隔に s
rem
の代わりにsを使用するように、一部のブラウザのデフォルト値を更新します。em
- 避けてください
margin-top
。垂直方向の余白が崩れ、予期しない結果が生じる可能性があります。しかし、より重要なことは、単一の方向性margin
はより単純なメンタル モデルです。 - デバイス サイズ間でのスケーリングを容易にするために、ブロック要素は
rem
s にmargin
s を使用する必要があります。 font
関連するプロパティの宣言を最小限に抑え、inherit
可能な限り使用します。
ページのデフォルト
<html>
要素と<body>
要素が更新され、ページ全体のデフォルトが改善されました。すなわち:
- は、およびを
box-sizing
含むすべての要素でグローバルに設定されます。これにより、要素の宣言された幅がパディングまたは境界線によって決して超えられないことが保証されます。*::before
*::after
border-box
- でベース
font-size
は宣言されていません<html>
が、16px
想定されています (ブラウザのデフォルト)。ユーザーの好みを尊重し、よりアクセスしやすいアプローチを確保しながら、メディアクエリを介して簡単にレスポンシブ型スケーリングを行うためfont-size: 1rem
に に適用されます。<body>
- でベース
- は
<body>
、グローバルfont-family
、line-height
、およびも設定しtext-align
ます。これは、フォントの不一致を防ぐために、後で一部のフォーム要素に継承されます。 - 安全のために、
<body>
には宣言された がありbackground-color
、デフォルトは#fff
です。
ネイティブ フォント スタック
デフォルトの Web フォント (Helvetica Neue、Helvetica、および Arial) は、Bootstrap 4 で削除され、すべてのデバイスと OS で最適なテキスト レンダリングを行うために「ネイティブ フォント スタック」に置き換えられました。ネイティブ フォント スタックの詳細については、 Smashing Magazineの記事 を参照してください。
これfont-family
は に適用され、<body>
Bootstrap 全体で自動的にグローバルに継承されます。グローバルを切り替えるには、Bootstrapfont-family
を更新して再コンパイルします。$font-family-base
見出しと段落
すべての見出し要素 (例: <h1>
and )<p>
がリセットされ、margin-top
削除されます。見出しがmargin-bottom: .5rem
追加され、段落margin-bottom: 1rem
が簡単に配置できるようになりました。
見出し | 例 |
---|---|
|
h1. ブートストラップの見出し |
|
h2. ブートストラップの見出し |
|
h3. ブートストラップの見出し |
|
h4. ブートストラップの見出し |
|
h5. ブートストラップの見出し |
|
h6. ブートストラップの見出し |
リスト
すべてのリスト<ul>
— 、<ol>
、および<dl>
— はmargin-top
削除され、margin-bottom: 1rem
. ネストされたリストにはmargin-bottom
.
- Lorem ipsum dolor sit amet
- Consectetur adipiscing elit
- マッサで整数痴漢ロレム
- プレチウム ニスル アリケのファシリシス
- Nulla volutpat aliquam velit
- インゲンマメ iaculis neque
- Purus sodales ultricies
- Vestibulum laoreet porttitor sem
- Ac tristique libero volutpat at
- Faucibus porta lacus fringilla vel
- Aenean sit amet erat nunc
- Eget porttitor lorem
- Lorem ipsum dolor sit amet
- Consectetur adipiscing elit
- マッサで整数痴漢ロレム
- プレチウム ニスル アリケのファシリシス
- Nulla volutpat aliquam velit
- Faucibus porta lacus fringilla vel
- Aenean sit amet erat nunc
- Eget porttitor lorem
スタイルをシンプルにし、階層を明確にし、間隔を空けるために、説明リストmargin
の が更新されました。<dd>
s にリセットmargin-left
し0
て追加しmargin-bottom: .5rem
ます。<dt>
は太字です。
- 説明リスト
- 説明リストは、用語を定義するのに最適です。
- ユースモッド
- Vestibulum id ligula porta felis euismod semper eget lacinia odio sem.
- Donec id elit non mi porta gravida at eget metus.
- マレスアダ ポルタ
- Etiam porta sem malesuada magna mollis euismod.
整形済みテキスト
要素がリセットされ、その<pre>
要素が削除され、その要素に単位がmargin-top
使用されます。rem
margin-bottom
.example-要素 { margin-bottom: 1rem; }
テーブル
テーブルはスタイルに合わせてわずかに調整され<caption>
、境界線が折りたたまれ、一貫性が保たtext-align
れます。ボーダー、パディングなどの追加の変更は、.table
クラスに付属しています。
表の見出し | 表の見出し | 表の見出し | 表の見出し |
---|---|---|---|
表のセル | 表のセル | 表のセル | 表のセル |
表のセル | 表のセル | 表のセル | 表のセル |
表のセル | 表のセル | 表のセル | 表のセル |
フォーム
シンプルな基本スタイルのために、さまざまなフォーム要素が再起動されました。最も注目すべき変更の一部を次に示します。
<fieldset>
s にはボーダー、パディング、またはマージンがないため、個々の入力または入力グループのラッパーとして簡単に使用できます。<legend>
は、フィールドセットと同様に、ある種の見出しとして表示されるように再スタイルされました。<label>
s が適用display: inline-block
できるように設定されています。margin
<input>
s、<select>
s、<textarea>
s、および<button>
s はほとんど Normalize によって処理されますが、Reboot によってそれらのmargin
および setも削除されline-height: inherit
ます。<textarea>
水平方向のサイズ変更はページ レイアウトを「壊す」ことが多いため、垂直方向のみにサイズ変更できるように変更されています。
これらの変更点などを以下に示します。
その他の要素
住所
<address>
要素が更新され、ブラウザのデフォルトが から にリセットさfont-style
れitalic
ますnormal
。line-height
も継承され、margin-bottom: 1rem
追加されました。<address>
s は、最も近い祖先 (または作業全体) の連絡先情報を提示するためのものです。で行を終了することにより、フォーマットを保持し<br>
ます。
1355 Market St, Suite 900
San Francisco, CA 94103
P: (123) 456-7890 フルネーム
[email protected]
引用符
margin
blockquotesのデフォルトは であるため、他の要素との一貫性を高める1em 40px
ために にリセットします。0 0 1rem
Lorem ipsum dolor sit amet, consectetur adipiscing elit. 整数は前もって計算します。
インライン要素
この<abbr>
要素は、段落テキストの中で目立つようにするための基本的なスタイルを受け取ります。
概要
cursor
summaryのデフォルトはtext
であるため、これを にリセットしpointer
て、要素をクリックして操作できることを伝えます。
いくつかの詳細
詳細についての詳細情報。
さらに詳しく
詳細についてはこちら。
HTML5[hidden]
属性
HTML5 は、 という名前の新しいグローバル属性[hidden]
を追加します。これは、デフォルトでスタイル設定さdisplay: none
れています。PureCSSからアイデアを借りて、誤って上書きされ[hidden] { display: none !important; }
ないようにすることで、このデフォルトを改善します。display
IE10 ではネイティブにサポートされて[hidden]
いませんが、CSS の明示的な宣言により、この問題を回避できます。
jQuery の非互換性
[hidden]
$(...).hide()
jQuery のおよび$(...).show()
メソッドと互換性がありません。したがって、現在のところ、要素[hidden]
を管理するための他の手法を特に推奨していません。display
要素の可視性を切り替えるだけで、要素display
が変更されず、要素がドキュメントの流れに影響を与える可能性がある場合は、代わりにクラスを使用します。.invisible