【週刊ドットインストール】 考える力を養うための新クラス『データで学ぶアルゴリズム』を256timesでリリース!
flex:1 は横並びにしたふたつの div の幅を均等にするためのものでしたが、container をつけた div にも適用されてしまったため、両端いっぱいまで広がってしまったということですね。
とありましたが、
hero の中に <h2>、 <p>、 <a> を囲う div① と img を囲う div② が元々あり、後から div① と div② を囲う新たな <div class="container"> という div③ が増えた。なので flex:1 は ①、②、③に適応される。
hero
<h2>
<p>
<a>
div①
img
div②
<div class="container">
div③
flex:1
.hero container div { flex: 1; }
にする必要があること。 というのは理解できたのですが、 ③ 適応されたから両端いっぱいまで広がる意味がわからないです。③ が ①、② の親要素だからでしょうか。 また、flex: 1; のセレクタに container を追記しなくても見た目は変わりませんでしたが変えなければいけない理由はありますか?
flex: 1;
container
ドットインストールは、3分動画でマスターできるプログラミング学習サービスです。
3分で気軽に学習でき、スマートフォンからも視聴可能です。ホームページやWebサービスの制作を通して、実践的にプログラミングを学べます。
他にも、ゲーム制作やデータ分析・機械学習・AIに使われる言語まで幅広くカバー。学びたい分野のレッスンがきっと見つかります。
この回答を見るにはプレミアムプランへの登録が必要です
とありましたが、
heroの中に<h2>、<p>、<a>を囲うdiv①とimgを囲うdiv②が元々あり、後からdiv①とdiv②を囲う新たな<div class="container">というdiv③が増えた。なのでflex:1は ①、②、③に適応される。にする必要があること。
というのは理解できたのですが、
③ 適応されたから両端いっぱいまで広がる意味がわからないです。③ が ①、② の親要素だからでしょうか。
また、
flex: 1;のセレクタにcontainerを追記しなくても見た目は変わりませんでしたが変えなければいけない理由はありますか?