現在コーポレートサイトの模写をしています。
リンク内容
ヘッダー部分がどのようなcssになっているのかが中々把握できませんでした。
具体的に理解に苦しんだ部分について説明します。
全幅の時は中央よりも少し左寄りにclass名「inner wrapper」(以後wrapperと記載します)部分が配置されており、画面を狭くしていくと(レスポンシブデザインに切り替わる手前までです)このwrapper部分が左端に寄っていき(marginが狭くなっていき)左に寄り切ると今度は右側の余白部分が狭くなってきたので、先ほどの左に寄り切った時の幅が、このwrapperのmax-widthなんだな?という事は分かりました。
そして、サイト内の別のコンテンツもすべて中央揃えで、このwrapperも中央から左に寄ってきた事もあり、margin: 0 auto;を指定するのかなと考えました。
しかしこの二つを指定すると、wrapper部分は中央に寄ってしまい、デモ画面と見比べても明らかに配置が違いました。
色々調べた末にソースを確認してみると、wrapperにwidth: 100%;も指定されており、これを追加すると同じようになりました。
wrapper部分はフレックスアイテムでもあり、widthがコンテンツ幅になっていたため、marginでの中央揃えがこのような形で反映されたんだなという事が分かりました。
これを解消するためにwidth:100%;を指定したという事なのでしょうか・・?
また、今回のようなヘッダーの動きを見たとき、どのような動きがあればwidthやmax-widthが指定されているという事を把握することができるのでしょうか?何か見極めるコツなどありますか?
ひたすらコーディングして経験を積むことが重要なのは承知しておりますが、初心者でもわかりやすいコツなどがあれば教えていただけると助かります。
よろしくお願いいたします。
html
1<body> 2 <header id="header"> 3 <div class="inner wrapper"> 4 <h1 class="logo"> 5 <a href="index.html"><img src="img/logo.svg" alt="Web Entertainment Design"></a> 6 </h1> 7 <nav> 8 <ul> 9 <li><a href="#news">NEWS</a></li> 10 <li><a href="#about">ABOUT</a></li> 11 <li><a href="#business">BUSINESS</a></li> 12 <li><a href="#company">COMPANY</a></li> 13 </ul> 14 </nav> 15 </div> 16 <a class="contact" href="#">お問い合わせ</a> 17 </header>
css
1img { 2 max-width: 100%; 3 vertical-align: bottom; 4} 5li { 6 list-style: none; 7} 8 9.logo { 10 width: 100px; 11 line-height: 1px; 12 margin-right: 60px; 13} 14.logo a { 15 display: block; 16} 17.wrapper { 18 width: 100%; 19 max-width: 1032px; 20 padding: 0 16px; 21 margin: 0 auto; 22} 23#header { 24 height: 80px; 25 display: flex; 26 justify-content: space-between; 27 align-items: center; 28} 29#header .inner { 30 display: flex; 31 align-items: center; 32} 33#header .inner ul { 34 display: flex; 35 align-items: center; 36} 37#header .inner li { 38 margin-right: 30px; 39} 40#header .inner li:last-child { 41 margin-right: 0; 42} 43#header .contact { 44 width: 200px; 45 height: 80px; 46 line-height: 80px; 47 background-color: #000; 48 color: #fff; 49 font-size: 0.75rem; 50 display: inline-block; 51 text-align: center; 52} 53#header .contact:hover { 54 background-color: #333; 55} 56
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/11 02:43
2021/11/11 02:50 編集
退会済みユーザー
2021/11/11 04:49 編集
2021/11/11 05:31
退会済みユーザー
2021/11/11 05:35 編集
2021/11/11 05:53 編集
退会済みユーザー
2021/11/11 05:56