質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

782閲覧

クラスの使い分けについて

FJK

総合スコア1

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2021/09/05 02:19

前提・実現したいこと

お世話になります。
かなり初歩的な質問だと思われ、自分でも探してみたのですが、きっと同じような質問はあるのだと思うのですが・・・。
まだこうした方面での語彙力が乏しく、検索時の適切なワード選びなどができず
上手く見つけ出せなかったので新たにご質問をさせていただきたいです。

現在Manaさんが執筆されました”1冊ですべて身につく HTML&CSSとWebデザイン入門講座”でサイト制作の実習をしています。
最初のheaderの作成で1個所疑問点がございます。

display:flexでheader内のロゴとナビメニューを左右に配置するのですが
その後ロゴのメニューが両端に寄っているのを少し中央側に寄せるために
追加でCSSで記述を行う指示が出ています。
この部分で疑問がございます。

flexを適用するためにまず”page-header”というクラスをheaderに付与しますが
その後上記の調整のために”wrapper”を追加しております。

ここで
max-width: 1100px;
margin: 0 auto;
padding: 0 4%;
を”page-header”ではなく"wrapper"に分けて記述する理由はなんなのでしょうか。
試しに"wrapper"をコメントアウトし、上記の3行を”page-header”に追加した際は
表示の結果は同じであるように見えました。

なぜここでわざわざクラスを分けて記述を行うのか
初歩的な内容で恐れ入りますが、ご教示いただけますと幸いです。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

-index.html-

<body> <header class="page-header wrapper"> <h1><a href="index.html"><img src="images/logo.svg" alt="WCBカフェホーム" class="logo"></a></h1> <nav> <ul class="main-nav"> <li><a href="news.html">News</a></li> <li><a href="menu.html">Menu</a></li> <li><a href="contact.html">Contact</a></li> </ul> </nav> </header> </body>

-style.css-
.page-header {
display: flex;
justify-content: space-between;
}

.wrapper {
max-width: 1100px;
margin: 0 auto;
padding: 0 4%;
}

試したこと

"page-header"に、”wrapper”の記述を行い表示結果を確認してみた。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

"page-header"と"wrapper"に記述されている内容を見てみると2つクラスは役割が分けられていることに気づくと思います。

"page-header"…flexレイアウトの指定
"wrapper"…幅、中央寄せの指定

flexレイアウトか中央寄せ、どちらか一方だけを使いたいという場面が今後出てくると想定して二つに分けているのかとおもいます。
"page-header"はおそらくページ内に1回しか登場しないでしょうから、wrapperの幅指定を使いまわしたいということなのではと推測します。

投稿2021/09/05 03:20

oran

総合スコア50

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

FJK

2021/09/05 06:12

ご回答ありがとうございます。 役割事につける目的と汎用性の確立のためということなのですね。 具体的な意図までご説明ありがとうございました。
guest

0

その書籍が手元に無いのでわかりませんが、後々wrapperが付く要素が出てくるのでは。
(例えばフッタエリアを作成する際に、同じ幅を持たせるならclass="page-footer wrapper"とできる)

投稿2021/09/05 02:36

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

FJK

2021/09/05 06:16

ご回答ありがとうございます。 確かに"wrapper"はHTML全体を通して何度も使いまわすクラスですので 効率化を図って記述を進める意図があるのかもしてないですね。 この先のページ作成も進めていく中で、再び"wrapper"が出てくる場面があると思いますので どのような使われ方をしているか注目してみますね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問