超超初心者向け漫画サイトのつくり方【メール送信ページをつくる。その2装飾する】

メール送信ページを装飾していきます。

装飾(CSSの記述)については、同じ結果でも方法は色々あります。

今回は、簡単シンプルに見た目を整えていきます。

ビフォーアフターを見てみる

完成図から紹介します~

◆完成図

あーもう、見た目がアレですが。センスとかセンスとかセンスが皆無ですが。

色のチョイスで多少は変わってくると思うので、好きな色に変えてください。

ついでに、装飾前(CSS記述前)は

◆装飾前

こんな感じです。で、htmlは

こんな感じです。

htmlは今回は触りません。

CSSを記述していく

style.cssをテキストエディタ(サクラエディタ)で開いてください。

記述を始める場所は、一番下にしてください。

一気に記述コードを書いていきます。あとで解説します。

form p { color: #806046;}

form {
  background: #f5f5f5;
  width: 550px;
  margin: 0 auto;
}

.name { display: flex;}

.name p:first-child { width: 180px;}

.e-mail { display: flex;}

.e-mail p:first-child { width: 180px;}

.message { display: flex;}

.message p:first-child { width: 180px;}

.message textarea {
  width: 300px;
  height: 100px;
}

.reply { display: flex;}

.reply p:first-child { width: 180px;}

form p:last-child {
  text-align: center;
  padding-bottom: 10px;
}

白状すると、もっとスマートな記述が可能です。

勉強が進むと見えてきますので、今回はこの方法で覚えてください。すでに違和感があるひともいるかも知れませんね。

CSSの解説

上から順に解説していきます。サイズ、色を自分好みに変えるひとは、どこを変更すればいいか確認してください。

★form p { color: #806046;}

適用範囲:<form>~</form>の中の<p>

適用内容:文字色を#806046にする

なんで、p {#806046;}にしなかったかと言うと、他のページ(news.html)でpタグを使っているので、pに適用しちゃうとそっちにも反映されてしまうからです。

あと、テキストカラーの変更なのでtext-colorとかfont-colorにしたくなりますが、colorのみでテキストカラーの変更になります。最初のうち、結構間違いがちです。

★form {
background: #f5f5f5;
width: 550px;
margin: 0 auto;
}

適用範囲:<form>~</form>

適用内容:background→背景色を#f5f5f5にする。(色を変えたいひとは、ここを変更)
width: 550px;→横幅を550pxにする。(薄灰色の部分の幅を変えたいひとは、ここを変更)
margin: 0 auto;→中央寄せ

★.name { display: flex;}

適用範囲:<div class=”name”>~</div>の中身

適用内容:横並び

★.name p:first-child { width: 180px;}

適用範囲:<div class=”name”>~</div>の中のpの最初の子

<p>お名前</p>が、最初の子
<p><input type=”text” name=”name” required></p>が最後の子

適用内容:横幅を180pxにする。

横幅を指定した理由は、記入欄すべてを同じ位置から開始させるためです。

★.e-mail { display: flex;}
★.e-mail p:first-child { width: 180px;}
★.message { display: flex;}
★.message p:first-child { width: 180px;}
★.reply { display: flex;}
★.reply p:first-child { width: 180px;}

nameの解説を、それぞれe-mail、message、replyに置き換えたら全て同じ意味です。

★.message textarea {
width: 300px;
height: 100px;
}

適用範囲:<div class=”message”>~</div>の<textarea>~</textarea>

適用内容:width: 300px;→横幅を300pxにする。
height: 100px;→縦幅を100pxにする。

入力しやすい大きさにサイズアップしました。

★form p:last-child {
text-align: center;
padding-bottom: 10px;
}

適用範囲:<form>~</form>の中の<p>で最後の子と位置付けられるもの

あー、ややこしくなりました。

htmlで見ると、以下の通りです。

一番最後の赤枠で囲った部分に適用したいので、正確には間違った記述です。でも許容範囲。たぶん。

で、一番最後の赤枠で囲った子は、一人っ子なので最初の子であり最後の子です。

他の最初の子には適用したくない内容なので、最後の子として適用させました。うーん、ややこしや…。

適用内容:text-align: center;→真ん中配置
padding-bottom: 10px;→下のすき間を10pxつくる

paddingを入れないと、背景色の境目ピッタリに配置されます。少し余裕を持たせたほうが見栄えがいいので、paddingを入れました。

以上です。お疲れさまでした。

まとめ

超超初心者向けなのに、なんじゃこりゃー。

htmlを簡素にしようとして、CSSを複雑にしてしまいました。

htmlにちょっと書き足せば、もう少しCSSを簡略化する方法はあります。

でも勉強にはなった…よね?なったよね…。

コメント