読み込みの実装
Bootstrap4が出て久しいのですが、最近までバージョン3系を使っていました。早速自社のサイトも更新する予定がありましたので、早速実装してみました。こちら記事はその時の記録になります。結構覚える事があって時間が掛かりますね。
Bootstrap4使われているテーマでも良かったのですが、今回は勉強にブランクテーマでfunction.phpに読み込ませました。
今回使ったブランクテーマはblankslateです。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
//functions.php //Bootstrap4のJSとCSSファイルを読み込む function add_files() { // WordPress提供のjquery.jsを読み込まない wp_deregister_script('jquery'); // jQueryの読み込み wp_enqueue_script( 'jquery', get_template_directory_uri() . '/js/jquery-3.3.1.js', "", "20181109", false); // サイト共通JS wp_enqueue_script( 'smart-script', get_template_directory_uri() . '/js/bootstrap.js', array( 'jquery' ), '20181109', false ); // サイト共通のCSSの読み込み wp_enqueue_style( 'main', get_template_directory_uri() . '/css/bootstrap.css', "", '20181109' ); } add_action('wp_enqueue_scripts', 'add_files'); |
3系との主な違い
Bootstrap4は3系と違いグリッドなども違いますが、大雑把に書くと以下になります。
- CSSの開発がLessからSass
- グリッドがスマホファーストで5つのブレイクポイントに。
- パネルやサムネイル、囲みの枠が廃止になりカードというコンポーネントが新設
- IE9とiOS6はサポート外、
- サイズ単位をrem,emなどに。
参照:https://getbootstrap.com/docs/4.1/getting-started/introduction/
詳しくは上の参照の公式サイトを見て欲しいですが、細かく書くと色々あります。制作上の注意点としては大雑把に書けBootstrap3から4に移行する場合結構書き直しが多いので、単純にマークアップだけ直せばOKってはなりませんので、注意です。
余白ルールも導入された。
通常はmargin-top とか padding-topとCSSに記述しますが、クラスで指定が可能になってます。
参考:https://getbootstrap.com/docs/4.1/utilities/spacing/
Where property is one of:
m
– for classes that setmargin
p
– for classes that setpadding
Where sides is one of:
t
– for classes that setmargin-top
orpadding-top
b
– for classes that setmargin-bottom
orpadding-bottom
l
– for classes that setmargin-left
orpadding-left
r
– for classes that setmargin-right
orpadding-right
x
– for classes that set both*-left
and*-right
y
– for classes that set both*-top
and*-bottom
- blank – for classes that set a
margin
orpadding
on all 4 sides of the element
Where size is one of:
0
– for classes that eliminate themargin
orpadding
by setting it to0
1
– (by default) for classes that set themargin
orpadding
to$spacer * .25
2
– (by default) for classes that set themargin
orpadding
to$spacer * .5
3
– (by default) for classes that set themargin
orpadding
to$spacer
4
– (by default) for classes that set themargin
orpadding
to$spacer * 1.5
5
– (by default) for classes that set themargin
orpadding
to$spacer * 3
auto
– for classes that set themargin
to auto
つまり、<div class=”px-1″>とすれば、上下に0.25パディングがとれるという事ですね。これCSSに記述するかHTMLのマークアップに書くか悩むところですが、WordPress使っているので、そのままタグに書くことにしましたよ。
width,heightとか
幅とか高さなどはCSSで書いていたのですが、w-100とか書けば指定が可能です。classにw-100とか書けば、width 100%に。またmh-50 とか書けば、
max-height: 50%になります。これは便利です。
参照:https://getbootstrap.com/docs/4.1/utilities/sizing/
最後に書いておくと
Bootstrap4に移行しようかな?という方のために書いておくと、凄く便利でもっと皆!移行しようぜと言いたいところですが、結構な作り直しになります。今回自社のサイトが結構貧素だったので直しましたが、業務の合間に手を入れて2週間以上掛かっています。
その主な時間はカードと余白の直し、スマホ用に作り直しなどキリがないですが、特にメニューは現在も直しつつありますし、WordPressで使う使う場合はプラグインから吐き出しのHTMLも注意が必要です。特にプラグインのメニューでd-xxとか競合する値が生成されていた場合、悩む事になります……まぁ気がついて直せるプラグインならいいですが。