ブロック要素をコンテナの中央に寄せたい場合、よく
margin: 0 auto;
を使いますよね?
このautoってどういう意味があるんですか?他のサイトを参照しても本質的なことを書いているところがないので教えていただきたいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ベストアンサー
aacchanさんがどこまで深掘りした内容をご所望かわかりかねますが、一般的にはMDNに書いてあるとおりの理解で問題ないと思います。
margin - CSS: カスケーディングスタイルシート | MDN
auto
ブラウザーが適切なマージンを選択して使用します。例えば、特定の場合に要素を中央揃えするためにこの値を使用します。
ちょっと補足
まず、margin: 0 auto;
とはmargin-top: 0; margin-bottom: 0; margin-left: auto; margin-right: auto;
の略記です。これはよいでしょうか。
margin に auto が指定されたときは、ブラウザが適切に計算して値を代入します。初期値は 0 なので何も指定しないと中央寄せされませんが、margin-left と margin-right に auto が指定されたときは、どちらも等しくなるように値が計算されて代入されます。そのため中央寄せで表示されるわけです。
margin: auto;
とはブラウザに計算を任せます、という指定なわけです。
MDNには最新のHTML,CSS,JavaScriptのほぼ正確な情報が読みやすいかたちで載っていますので、調べ物をする際には当てにするとよいです。(日本語版で情報が欠けている場合は英語版を)
marginの計算について、より具体的なプロセスが知りたければW3Cの勧告書を読んでみてください。
Box model - 8.3 Margin properties | W3C CSS2 Editor's Draft
Visual formatting model details - 10.3 Calculating widths and margins | W3C CSS2 Editor's Draft
投稿2019/06/01 22:36
総合スコア118
0
横幅を指定したときに親要素より横幅が小さければ、空いたスペースを左右均等に配置してくれます!
↓が参考になると思います!
http://ja.learnlayout.com/margin-auto.html
投稿2019/06/01 02:25
総合スコア549
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。