下記スクリーンショットの範囲を作成していきます。
【結果セクション】
【CTA】
1.結果セクション大見出し
前回作成した問題提起部分から繋がったような、黄色背景部分を作成します。
1-1.下向きの三角形を作る
まず、結果セクション全体を囲うためのsectionタグを書きます。
その中にdiv.bg-yellow > div.container をいれてきましょう。
.containerの中には見出しと説明文を加えます。
lp.html
<section class="solution">
<div class="bg-yellow">
<div class="container">
<h2 class="text-center">
SkillHub アントレなら<br>
Web起業を成功へ導く技術と知識、ぜんぶ教えます
</h2>
<p class="col-10 mx-auto text-center">
起業家に必要なのは「必要最低限のWeb技術」です。本格的なデザイナーやプログラマーになる必要はありません。 このプランではあなたを成功に導くためのWeb技術を学びます。広く浅く、ミニマムな技術を身に着けます。
</p>
</div>
</div><!-- /.bg-yellow -->
</section>
ブラウザで表示を確認してください。
h2のmarginが影響して、黄色の背景色が途切れてしまっています。
親要素にpaddingをつけてあげると、marginがはみ出さなくなります。
下向きの三角形を::aftarで作れるように、bg-yellowクラスのdivに「solution-title」と position-relative」クラスを加えましょう。
lp.html
<section class="solution">
<div class="solution-title position-relative bg-yellow">
<div class="container">
以下略
.solution-title::after{}
で下向きの三角形を作ります。
.solution-titte{}
ではmarginを使って三角形の高さ+余白分のスペースを確保。
上下にpaddingを設定することで、hタグやpタグのmarginで隙間が出来ないようにします。
style.css
.solution-title{
margin-bottom: calc(120px + 6rem); /* ::afterの高さ + 余白 */
padding-top: 0.5rem;
padding-bottom: 0.5rem;
}
.solution-title::after{
content: "";
position: absolute;
bottom: -120px;
right: 0;
border-style: solid;
border-width: 120px 50vw 0 50vw;
border-color: #FFE20D transparent transparent transparent;
}
1-2.見出し文字の装飾をする
h2の中の「技術」と「知識」の文字色をピンクに変更し、文字下に白いマーカー風の線を引きます。
- 文字色をピンクにする→text-pink
- 白色の下線をひく→marker-white
それぞれクラスを作成して、spanタグを使って指定します。
lp.html
<h2 class="text-center">
SkillHub アントレなら<br>
<span class="marker-white">
Web起業を成功へ導く<span class="text-pink">技術</span>と<span class="text-pink">知識</span>、ぜんぶ教えます
</span>
</h2>
style.css
/* それぞれ似たクラスの並びに追加してください */
.text-pink{
color: #FF0069;
}
.marker-white{
background: linear-gradient(transparent 75%, #FFFFFF 75%);
}
● linear-gradientとは
linear-gradientは線状のグラデーションを作るためのCSS関数です。
IllustratorやPhotoshopの“線形グラデーション”を、Webページ上で表現できる指定方法と考えてください。
基本的な書き方は、下図のようになっています。
向きは指定しない場合、上から下にグラデーションします。
今回の場合は「(上から)75%の位置まで透明、白色を75%の位置から(100%まで)」とパキッと分けているためグラデーションにはなっていません。
%の部分を変更すると、グラデーションにもなります。
linear-gradientは背景色やボタンなど、色々な箇所で使うことができます。
今回文字装飾に使用したのは、text-decoration: underline;
やborder-bottom
だと「文字の下(重ならない位置)」に線が入ってしまうため。背景色として設定することで、文字と下線を重ねた表現を作っています。
1-3.見直し・調整
前回作った問題提起部分から、下向きの三角形まで、黄色背景部分が繋がりました。
ここで一旦、デザインと見比べて余白等を調整しておきましょう。
ぱっと見て気になったのは下記3つ。
- 文章部分の行間が少し狭い
- 白い角丸の下、余白が足ていない
- SkillHubアントレなら~の下に余白を足したい
style.cssに必要なスタイル指定を追加したり、書いたプロパティ値の調整をしたりしていきます。
marginの値などは、検証ツールを見ながら妥当なところを探ると進めやすいです。
style.css
/* 新規追加 */
p{
line-height: 1.65;
}
.problem .col-4{
margin-bottom: 0.75em;
}
.solution-title h2{
margin-bottom: 1.5em;
}
/* 既存分の調整 */
.problem::after {
position: absolute;
content: "";
z-index: -1;
bottom: 0;
width: 100%;
height: 7rem; /* col-4のmargin追加に合わせて調整 */
background-color: #FFE20D;
}
見比べてもイマイチ分からない!という時は、スクリーンショットを撮ってデザインに重ねてみる方法もあります。
※今回のコーディングではピッタリ重ねる必要はありません。
気になるところを微調整するくらいで進めてください。
2.横並びパーツ
画像とテキスト横並び部分
下図の部分を作ります。
今回、画像部分は「01 Web制作技術」などの文字も含んだ状態で書き出しています。
そのまま画像を読み込んで、シンプルに作りましょう。
lp.html
<div class="container">
<div class="row">
<div class="col-4">
<img src="images/solutions1@2x-8.png" alt="01-Web制作技術">
</div>
<div class="col-8">
<h3 class="mt-0">
楽しみながら、Web技術を習得していただきます
</h3>
<p>
多くの人は面白さを味わう前に挫折してしまいます。例えばHTMLタグやCSSのプロパティをすべて覚えてからや、延々とプログラミングの基礎を学ぶなどしていると、どうしても苦しさばかりが先に来ます。Skillhubの学習方法は「プロジェクト・ベースド・ラーニング」という形をとります。簡単に言うと「作りながら学ぼう」ということです。
</p>
<p>
驚くかもしれませんが、このプランではWebサービスをいきなり作ります!さらに作るだけではなく、それをローンチ(公開)します。そして、その過程で必要になった技術を学ぶというスタイルなので、楽しみながら技術を習得することを可能にします。
</p>
</div>
</div><!-- /.row -->
</div><!-- /.container -->
ブラウザで表示をすると、画像がはみ出していますね。
max-width:100%;を指定できるクラスを作って、大きさを制御しましょう。
h3の文字にもピンク色の下線を引けるようにクラスを作ります。
html - クラス追加箇所
<img src="images/solutions1@2x-8.png" alt="01-Web制作技術" class="w-max100">
<h3 class="mt-0">
<span class="marker-pink">楽しみながら、Web技術を習得していただきます</span>
</h3>
style.css
.w-max100{
max-width: 100%;
height: auto;
}
.marker-pink{
background: linear-gradient(transparent 75%, rgba(255, 0, 105, 0.7) 75%);
/* h3に直接指定したい場合は display: inline; も必要 */
}
1つめの横並びが出来ました。
これを元に残る2つを作りましょう。
02集客・マーケは、カラムを入れ替えれば逆の並びになります。
mt-5rem
クラスを加えると、ちょうどよいくらい間隔が空きます。
制作事例部分
「Skillhub卒業生が制作したWebサービス例」部分。
見本画像下の制作者名の文字が少し小さく14px。
また、mt-5remクラスだと余白が足りません。
新たに「fsize-14」「mt-10rem」クラスを作って対応します。
style.css
.fsize-14{
font-size: 14px;
}
.mt-10rem{
margin-top: 10rem;
}
lp.html
結果セクション完成です。
3.CTA部分
CTA部分を作成しましょう。
吹き出しとテキスト
positionを使って吹き出しを上に移動。吹き出しのツノは疑似要素(::after
)で作ります。
ここまでのレッスンで作ってきた部分の復習にもなりますね。
まずはざっくりとhtmlで構成を作ります。
lp.html
<!-- ============================
/ CTA
/============================= -->
<section class="mt-10rem bg-yellow position-relative">
<h2 class="position-absolute round-border">
Web起業したい方、まずはご相談ください!
</h2>
<div class="container text-center">
<p>
SkillHubアントレに関する資料をオンラインでお送りいたします。
</p>
<p class="my-0">
5万人以上を指導してきた代表の吉田による、無料Zoomカウンセリングやメール相談も実施中。
</p>
<p class="mt-0 fsize-14">
※無料カウンセリングは毎月5名様限定となっております。詳しくはお問い合わせください。
</p>
</div>
</section>
まだブラウザで見ても、上図のように表示はぐちゃぐちゃです。
新しいクラスを命名して、CSSを書いていきましょう。
吹き出しの部分を作ります。
lp.html
style.css
/* ---------------------- */
/* CTA
/* ---------------------- */
.cta {
padding-top: 40px;
}
.cta-baloon {
width: 700px;
max-width: calc(100% - 30px);
/* 左右15pxずつ開ける */
top: -30px;
left: 0;
right: 0;
margin: auto;
padding: 5px 5px 7px;
font-size: 28px;
color: #FFF;
text-align: center;
background-color: #FFAB00;
}
.cta-baloon::after {
position: absolute;
content: "";
bottom: -15px;
left: calc(50% - 10px);
border-style: solid;
border-width: 15px 10px 0 10px;
border-color: #FFAB00 transparent transparent transparent;
}
吹き出し下の「SkillHubアントレに関する資料をオンラインでお送りいたします。」は、文脈を考えると見出しとは言い難いですね。
ですので、pタグにクラスを加えて対処することにします。
lp.html
<p class="cta-toptext">
SkillHubアントレに関する資料をオンラインでお送りいたします。
</p>
style.css
.cta-toptext {
font-size: 21px;
margin: 0.5em 0;
}
CTAボタン
2つ横並びになっている、CTAボタンを追加します。
lp.html
CSSの書き方を、ちょっとだけ工夫します。
style.css
.cta-btns{
display: flex;
justify-content: space-between;
width: 600px;
max-width: 100%;
margin: 2rem auto 0 auto;
}
/*=========== 以下、共通クラスに追加 ===========*/
.bg-black{
background-color: #000000;
}
.btn.bg-white{
border: 2px solid #000;
}
.btn.bg-black{
border: 2px solid #FFF;
}
クラス同士を半角スペースで区切らずに書くと「AND」の意味になります。
「.btn.bg-white」なら“btnクラスとbg-whiteクラスが両方指定されている要素”という意味です。
表示を見ると、デザインのようなスタイルになっているはずです。
黄色背景がボタンの下ピッタリで終わってしまっているので、ctaクラスに下paddingを足しておきましょう。
style.css
.cta {
padding-top: 3rem;
padding-bottom: 4rem;
}
完成です。