Cocoon愛用者のみなさん、こんにちは!ぽんひろ(@ponhiroo)です。
今回はタイトルを自由に入力できるおしゃれなボックスを作ります。
Cocoonには既にたくさんのボックスがありますがデザインが窮屈だったりで少し扱いにくいなと思ってました。
既存のボックスをカスタマイズしてしまえばいいのですが、オリジナルはオリジナルで残しておきたいので新規に作成しようと思います。
- ボックス一覧
- アイコンのつけ方
- 実装の手順
の順に紹介していきます!
Cocoonボックスパターン一覧
色や文字の大きさなどはCSSで変更できます。
色はわかりやすいように4色サンプルを用意しました。
変更したい場合はCSSにメモが記してるので、そこの数値を変えてみてください。
例えば文字の大きさを変えたいと思ったら、
font-size: ○○;
この○○の数値を変更すればOKです!
使い方は最後に説明するので、まずはデザインだけ見てね!
タイトル背景色ありボックス1
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box1-green">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box1-green{ margin: 2em auto; /* ボックスの余白 */ background: #eef8f3; /* ボックス背景色 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box1-green .box-title { background: #58be89; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box1-green p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box1-pink">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box1-pink{ margin: 2em auto; /* ボックスの余白 */ background: #fdf1f4; /* ボックス背景色 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box1-pink .box-title { background: #f27398; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box1-pink p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box1-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box1-blue{ margin: 2em auto; /* ボックスの余白 */ background: #e6f1f9; /* ボックス背景色 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box1-blue .box-title { background: #0e7ac4; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box1-blue p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box1-yellow">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box1-yellow{ margin: 2em auto; /* ボックスの余白 */ background: #fef9ed; /* ボックス背景色 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box1-yellow .box-title { background: #fdc44f; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box1-yellow p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
タイトル背景色ありボックス2
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box2-green">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box2-green{ margin: 2em auto; /* ボックスの余白 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ border:1px solid #58be89; /* ボックス線 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box2-green .box-title { background: #58be89; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box2-green p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box2-pink">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box2-pink{ margin: 2em auto; /* ボックスの余白 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ border:1px solid #f27398; /* ボックス線 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box2-pink .box-title { background: #f27398; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box2-pink p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box2-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box2-blue{ margin: 2em auto; /* ボックスの余白 */ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ border:1px solid #0e7ac4; /* ボックス線 */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box2-blue .box-title { background: #0e7ac4; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px;/* タイトル文字の大きさ */ padding: 5px;/* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box2-blue p { margin: 0;/* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box2-yellow">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box2-yellow{ border-radius:4px; /* ボックス角丸 */ max-width:600px; /* ボックス横幅 */ border:1px solid #fdc44f; /* ボックス線 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 3.5em 2em 1.5em; /* ボックス内側余白 */ position:relative; /* 配置に関するもの(ここを基準に) */ } .box2-yellow .box-title { background: #fdc44f; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ font-weight: bold; /* タイトル文字の太さ */ font-size: 20px; /* タイトル文字の大きさ */ padding: 5px; /* タイトル周りの余白 */ text-align: center; /* タイトル中央寄せ */ border-radius: 4px 4px 0px 0px; /* タイトル角丸 */ position:absolute; /* 配置に関するもの(ここを動かす) */ top:0; /*上から(0px)に配置 */ left:0; /*左から(0px)に配置 */ width:100%;/*横幅最大幅 */ } .box2-yellow p { margin: 0; /* 文字の余白リセット */ padding: 0; /* 文字の内側余白リセット*/ }
枠上にタイトルがあるボックス(直線)
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box3-green">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box3-green { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px solid #58be89; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box3-green .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #58be89; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box3-green p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box3-pink">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box3-pink { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px solid #f27398; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box3-pink .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #f27398; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box3-pink p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box3-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box3-blue { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px solid #0e7ac4; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box3-blue .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #0e7ac4; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box3-blue p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box3-yellow">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box3-yellow { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px solid #fdc44f; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box3-yellow .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #fdc44f; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box3-yellow p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
枠上にタイトルがあるボックス(点線)
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box4-green">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box4-green { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px dotted #58be89; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box4-green .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #58be89; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box4-green p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box4-pink">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box4-pink { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px dotted #f27398; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box4-pink .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #f27398; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box4-pink p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box4-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box4-blue { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px dotted #0e7ac4; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box4-blue .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #0e7ac4; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box4-blue p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box4-yellow">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box4-yellow { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px dotted #fdc44f; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box4-yellow .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -10px; /* 上から(-10px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #fdc44f; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box4-yellow p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
枠上にタイトルがあるボックス(背景色あり)
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box5-green">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box5-green { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ border: 1px solid #58be89; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ background: #eef8f3; /* ボックス背景色 */ } .box5-green .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -18px; /* 上から(-18px)移動*/ left: 27px; /* 左から(27px)移動 */ background: #58be89; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ padding: 0.6em 1em;/* タイトルの内側余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 17px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ border-radius:4px;/* タイトルの角丸 */ } .box5-green p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box5-pink">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box5-pink { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ border: 1px solid #f27398; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ background: #fdf1f4; /* ボックス背景色 */ } .box5-pink .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -18px; /* 上から(-18px)移動*/ left: 27px; /* 左から(27px)移動 */ background: #f27398; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ padding: 0.6em 1em;/* タイトルの内側余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 17px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ border-radius:4px;/* タイトルの角丸 */ } .box5-pink p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box5-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box5-blue { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ border: 1px solid #0e7ac4; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ background: #e6f1f9; /* ボックス背景色 */ } .box5-blue .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -18px; /* 上から(-18px)移動*/ left: 27px; /* 左から(27px)移動 */ background: #0e7ac4; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ padding: 0.6em 1em;/* タイトルの内側余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 17px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ border-radius:4px;/* タイトルの角丸 */ } .box5-blue p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box5-yellow">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box5-yellow { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ border: 1px solid #fdc44f; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ background: #fef9ed;/* ボックス背景色 */ } .box5-yellow .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -18px; /* 上から(-18px)移動*/ left: 27px; /* 左から(27px)移動 */ background: #fdc44f; /* タイトル背景色 */ color: #fff; /* タイトル文字色 */ padding: 0.6em 1em;/* タイトルの内側余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 17px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ border-radius:4px;/* タイトルの角丸 */ } .box5-yellow p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
枠上にタイトルがあるボックス(テープ風)
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box6-green">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box6-green { position:relative;/* 配置に関するもの(ここを基準に) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ margin: 2.5em auto;/*ボックス外側余白*/ background-color: #eef8f3; /*ボックス背景色*/ box-shadow: 0px 1px 5px rgba(0,0,0,0.1);/*ボックス影*/ border-radius:4px;/* ボックス角丸 */ max-width:600px;/*ボックス横幅*/ } .box6-green .box-title { position: absolute;/* 配置に関するもの(ここを動かす) */ top: -22px;/* 上から(-22px)移動*/ left: 30px;/* 左から(30px)移動*/ padding: 0.2em 2em;/* テープ内側余白*/ color: #58be89; /* テープ文字色 */ font-weight: bold;/* テープ文字太さ*/ font-size:18px;/* テープ文字大きさ*/ background-color: rgba(255,255,255,.1);/* テープ背景色と透過*/ border-left: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ左*/ border-right: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ→*/ box-shadow: 0 0 5px rgba(0,0,0,0.2); /* テープ影*/ transform: rotate(-3deg);/* テープの傾き*/ } .box6-green p{ margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box6-pink">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box6-pink { position:relative;/* 配置に関するもの(ここを基準に) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ margin: 2.5em auto;/*ボックス外側余白*/ background-color: #fdf1f4; /*ボックス背景色*/ box-shadow: 0px 1px 5px rgba(0,0,0,0.1);/*ボックス影*/ border-radius:4px;/* ボックス角丸 */ max-width:600px;/*ボックス横幅*/ } .box6-pink .box-title { position: absolute;/* 配置に関するもの(ここを動かす) */ top: -22px;/* 上から(-22px)移動*/ left: 30px;/* 左から(30px)移動*/ padding: 0.2em 2em;/* テープ内側余白*/ color: #f27398; /* テープ文字色 */ font-weight: bold;/* テープ文字太さ*/ font-size:18px;/* テープ文字大きさ*/ background-color: rgba(255,255,255,.1);/* テープ背景色と透過*/ border-left: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ左*/ border-right: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ→*/ box-shadow: 0 0 5px rgba(0,0,0,0.2); /* テープ影*/ transform: rotate(-3deg);/* テープの傾き*/ } .box6-pink p{ margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box6-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box6-blue { position:relative;/* 配置に関するもの(ここを基準に) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ margin: 2.5em auto;/*ボックス外側余白*/ background-color: #e6f1f9; /*ボックス背景色*/ box-shadow: 0px 1px 5px rgba(0,0,0,0.1);/*ボックス影*/ border-radius:4px;/* ボックス角丸 */ max-width:600px;/*ボックス横幅*/ } .box6-blue .box-title { position: absolute;/* 配置に関するもの(ここを動かす) */ top: -22px;/* 上から(-22px)移動*/ left: 30px;/* 左から(30px)移動*/ padding: 0.2em 2em;/* テープ内側余白*/ color: #0e7ac4; /* テープ文字色 */ font-weight: bold;/* テープ文字太さ*/ font-size:18px;/* テープ文字大きさ*/ background-color: rgba(255,255,255,.1);/* テープ背景色と透過*/ border-left: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ左*/ border-right: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ→*/ box-shadow: 0 0 5px rgba(0,0,0,0.2); /* テープ影*/ transform: rotate(-3deg);/* テープの傾き*/ } .box6-blue p{ margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ここにコンテンツを入力
ここにコンテンツを入力
ここにコンテンツを入力
<div class="box6-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
.box6-yellow { position:relative;/* 配置に関するもの(ここを基準に) */ padding: 2em 2em 1.7em; /* ボックスの内側余白(上:2em 左右:2em 下:1.7em) */ margin: 2.5em auto;/*ボックス外側余白*/ background-color: #fef9ed; /*ボックス背景色*/ box-shadow: 0px 1px 5px rgba(0,0,0,0.1);/*ボックス影*/ border-radius:4px;/* ボックス角丸 */ max-width:600px;/*ボックス横幅*/ } .box6-yellow .box-title { position: absolute;/* 配置に関するもの(ここを動かす) */ top: -22px;/* 上から(-22px)移動*/ left: 30px;/* 左から(30px)移動*/ padding: 0.2em 2em;/* テープ内側余白*/ color: #fdc44f; /* テープ文字色 */ font-weight: bold;/* テープ文字太さ*/ font-size:18px;/* テープ文字大きさ*/ background-color: rgba(255,255,255,.1);/* テープ背景色と透過*/ border-left: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ左*/ border-right: 2px dotted rgba(0,0,0,.1);/* テープのギザギザ→*/ box-shadow: 0 0 5px rgba(0,0,0,0.2); /* テープ影*/ transform: rotate(-3deg);/* テープの傾き*/ } .box6-yellow p{ margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
参考サイト:https://love-wave.com/css-waku/
ボックスタイトルにアイコンを入れる!
タイトルにアイコンを入れたい場合は「Font Awesome」で選ぼう!
タイトルの前にアイコンを入れたいときは、「Font Awesome」を使うと楽です。
まずは、下記リンク先から入れたいアイコンを選択しましょう。
そのページから下記のような「i」から始まるコードをコピペします。
<i class="fa fa-check-square" aria-hidden="true"></i>
そのコードをHTMLタグのタイトルの前に挿入します。
before
<div class="box6-blue">
<div class="box-title">ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
after
<div class="box6-blue">
<div class="box-title"><i class="fa fa-check-square" aria-hidden="true"></i> ここにタイトルを入力します</div>
<p>ここにコンテンツを入力します。</p>
</div>
これでアイコンが表示されるはずです!
アイコンをいれたボックスをアレンジ
アイコンを目立たせるデザインです。
アイコンが強調されたデザインです。アイコンの入れ方は先ほどと同様です。
<div class="box7-green">
<div class="box-title"><i class="fa fa-check-square" aria-hidden="true"></i> ここにタイトル</div>
<p>ここにコンテンツを入力</p>
</div>
.box7-green { position: relative; /* 配置に関するもの(ここを基準に) */ max-width:600px; /* ボックスの横幅 */ margin: 2em auto; /* ボックスの外側余白(上下:2em 左右:auto) */ padding: 1.7em 2em; /* ボックスの内側余白(上下:1.7em 左右:2em) */ border: 2px solid #58be89; /* ボックスの線 (太さ 線の種類 線の色)*/ border-radius: 4px; /* ボックスの角丸 */ } .box7-green i{ background: #58be89;/* アイコン背景色 */ color: #fff; /* アイコン色 */ padding: 10px; /* アイコン余白 */ border-radius: 20px; /* アイコン角丸 */ } .box7-green .box-title { position: absolute; /* 配置に関するもの(ここを動かす) */ top: -21px; /* 上から(-21px)移動*/ left: 30px; /* 左から(30px)移動 */ background: #fff; /* タイトル背景色 */ color: #58be89; /* タイトル文字色 */ padding: 0 10px;/* タイトルの余白 */ line-height: 1;/* タイトルの行の高さ */ font-size: 20px;/* タイトル文字の大きさ */ font-weight: bold;/* タイトル文字の太さ */ } .box7-green p { margin: 0; /* 文字の外側余白リセット*/ padding: 0; /* 文字の内側余白リセット*/ }
ボックスの実装手順・使い方
わかったけどどうやれば使えるようになるんだ?
前提として、必ず子テーマを編集するようにしましょう。
WordPressのテンプレートには親テーマと子テーマがあります。親テーマのみでも動きますが、テンプレート(Cocoon)のアップデートをすると親テーマが更新され、新しく自分で作ったものが消えてしまいます。
それを防ぐために子テーマをダウンロードし、外観→テーマから子テーマのほうを選択しておく必要があります。
公式からダウンロードできるので、やっていない人は今すぐやりましょう!。
それでは手順を紹介します。
1.上記から使いたいボックスを決めてコードを開き、CSSを全てコピー
2.Wordpressの管理画面→外観→テーマの編集→スタイルシートを選択
※外観→カスタマイズ→追加CSSの方でも可(好きな方で)
3.CSS貼り付け
※/*必要ならばここにコードを書く*/の下から貼り付けましょう。
4.プラグイン「AddQuicktag」をインストール・設定
※AddQuicktagとはHTMLタグのショートカットを作るプラグインです。HTMLの手打ちが面倒なので入れます。
プラグイン→新規追加を選択します。
「AddQuicktag」を検索し、インストールをクリック。
有効化します。
WordPressの管理画面の設定にAddQuicktagが追加されてますので、選択します。
最低限入力する必要があるのはボタン名、開始タグ、チェックリストの3点です。
- ボタン名は自分がわかりやすいと思う名前
- 開始タグは使いたいボックスのHTMLをコピペ
- チェックリストは一番右を選択しましょう
入力を終えたら変更を保存を選択します。
確認のために記事エディター画面を見てみましょう。
テキストモードを見ると先ほど設定したボタンが表示されているはずです。
そのボタンをクリックするとHTMLが出力されます。
同様にビジュアルエディタにも項目が増えています。
選択するとボックスが表示されます。
あとはタイトルとコンテンツを編集すれば完成です。
コメント
こんにちは。
初めて連絡します。尾崎と申します。
お忙しいところ、申し訳ありません。
昨日、はじめてWordPress「cocoon」設定をしました。
新規投稿の画面でぽんひろさんの様なビジュアルエディタが出てこないのですが、どのように設定すれば宜しいでしょう?
念のため、やってみたいこと。
1 BOX設定
2 吹き出し設定
です。
お手数ですがご教授頂ければ幸いです。
>尾崎さん
現在、投稿画面(エディター)の種類は
1.グーテンベルク
2.クラシックエディタ
の2点あります。
2は昔ながらのエディターで当記事の画像のものです。
Cocoon設定からエディター設定のGutenbergのチェックを外せばクラシックになります。
ただ、わざわざクラシックエディターを使う必要もありません。
HTMLはカスタムHTMLで貼り付けていただければ使えるようになると思います。
はじめまして。
ぽんと申します。
現在、ぽんひろさんの記事を参考にして、ボックスの中にタイムラインを入れようとしています。
この記事からここに飛びました→https://ponhiro.com/timeline-wordpress/
一点質問があるのですが、ショートコードとHTMLの組み合わせは不可能ですよね?
いろいろ試したもののうまくいきませんでした。
もしよろしければ、ボックスの中にタイムラインをHTMLで入れる方法をご教授いただければと思います。
勝手を申してすみませんが、よろしくお願いいたします。
>ぽんさん
初めまして!
組み合わせは可能です!
<p>ここにコンテンツを入力します。</p>
とショートコードを入れかえてください。
ただ、余白などの調整をしないと崩れるかもしれません。
ぽんひろさん、上の質問をしたものです。
解決いたしましたので削除してくださいませ。
これからもHPの更新を楽しみにしています。
ありがとうございました。
>すみれさん
解決されたようで良かったです。
こちらこそありがとうございます。
うまく設定できないため、質問させていただきます。
Wordpressの管理画面→外観→テーマエディタにてCSSコードを入力しています。
しかし、CSSコードを入力していてもいなくても、カスタムHTMLでHTMLコードを入力すると色やデザインが同じ灰色のデザインとなってしまい、CSSコードが反映されていないように思われます。
coccon子テーマは1.1.2を利用していて、グーテンベルクを利用しています。
何か間違いはありますでしょうか?
実際の表示画面でも同じ灰色で表示されるということですか?
よかったらURLを教えていただいてもよろしいでしょうか?
記事を拝見して、それぞれのボックスの設定してみました。
とってもデザインが良くて、記事が見やすくなりました。
ありがとうございました。
>ツバサさん
こちらこそありがとうございます!!
ぽんひろさんいつも参考にさせていただいてます。
まったくのド素人です。どうぞ教えてください。
①コード表示を開くと2種類のCSSが表示されるのですが、Cocoonの子テーマには2種類挿入するのですか?
②AddQuicktagの方にも2種類挿入するのですか?
なぜ2種類なのかわかりません。
③2種類入れる場合は段落を変えてだと思いますが、段落は何個もつけていいのですか?
④できれば、どんなCSSを追加したのか自分でCSSにタイトルをつけたいです。
例えば「 枠線 このCSSはぽんひろさんサイト参考 URL」など
これまで、他のサイトのものをみてカスタマイズコピペしましたが、どれがどれなのか分からなくなり、もとに戻そうにも分からなくて手がつけられません。
長くなりましたが、教えてください。
ぽんひろさん、こんばんは!
WordPress5.6にアップデートしてから、
番号なしリストや番号付きリストをボックス内で使用すると、
下部の余白部分が大きくなってしまいました。
もし何か対策わかれば、是非アドバイスお願いします!
度々コメントいたいします。
外観→テーマ編集からCSSを追加してみましたが、タイトルと背景色の部分だけ表示されて、その下はコードがズラズラと表示されています。
中々うまくいかないものですね。
説明通りにやっているのですが…。
追加CSSから保存すると
・1個の無効な設定があるため、保存できません
・マークアップは CSS 内では使えません。
という、エラーメッセージがでます。
保存ができません…。
数あるボックス・バナー説明サイトの中でも一番わかりやすかった。
初心者でもわかるように気を使ってくれた。
デザイン・カラーも適度な保守的で個性が強すぎず、適切なカラーバランスのデザイナーだと思う。
独り善がりにならず、使う人の立場で色づくりしている。
本当に素晴らしいサイトだ。
ありがとうございました。