twotwotwotoo2
@twotwotwotoo2

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

<P>の余白の初期値について

解決したいこと

タグの余白の初期値について、理解したいです。

下記デザインカンプからコーディングの練習をしています。
ソースコードの選択部分
「#detail .text p」が
「margin-bottom:20px;」
となっているのですが、
デザインカンプを見ると、ここのmarginは24pxでは?と思います。

ググると、

タグのmarginは
初期値として上下に1emが設定されているということがわかりました。
もしソースコード通り、20pxで設定をすると、
20px + 2em(上下の初期値margin分)ということになりますよね?

ここでemの単位についてなのですが、
単純に2em=2pxではないということは理解しております。
em=親要素に対する相対値。

の親要素は

ですが、特にfont sizeを指定しておらず、 bodyにfont size:14pxを設定しているので、 2em=28pxとなり、私の理解では、 ソースコード通りだと、 「20px + 28px = 48px」 となってしまいます。

私の認識がどのように間違っているかご指摘いただけるとありがたいです。。

(code jump の模写をしていて、この余白部分がいつも答えと合わず、
おそらく初期値のmarginやpaddingが関係しているのだろうなと思っています。)

CSSリセットをする方法も認識しておりますが、
一度CODE JUMPとソースコードを理解したいため、
そちらの方向で回答いただきたく思います。

スクリーンショット (4).png
スクリーンショット (2).png

初めての質問ですので、もし何か不足している部分ありましたらご指摘ください。

1

2Answer

ブラウザのディベロッパーツールを見て当該要素に最終的にどのようにスタイルが適用されているか調べましたか?

0Like

Comments

  1. @twotwotwotoo2

    Questioner

    はい、調べました。
    デモサイトは、ソースコード通り20pxになっていました。
    User agent stylesheet に、pタグに対してmargin-block-startとmargin-block-endがそれぞれ1emとなっていたので、
    これと足して24pxとする、ということだろうか?と思うのですが、
    そもそもその考えが合ってるのか、また、合ってるならばどう計算すれば24pxとなるのかが分からないです。。

  2. 問題を再現できる必要最低限(あくまで必要最低限でお願いします)のコードで、コピペすれば試せるものを提示できますか?

  3. 「どのようにスタイルが適用されているか」とは「実際には何ピクセルになっているか」という意味ではなく、「どのような設定項目を元にそのピクセル数は決められたのか」という意味ですよ。
    ブラウザによって違いはありますが、おそらくディベロッパーツールの「要素」-「計算済み」タブの「margin-bottom」の項の▶を押すと適用されているプロパティのファイル名と行番号が表示されると思います。


    通常の横書きテキストの場合、margin-block-startmargin-topと同じ意味、margin-block-endmargin-bottomと同じ意味です。
    だから足し算されるのではなく、優先度の高い方のマージンが適用されます。

  4. @twotwotwotoo2

    Questioner

    @SurferOnWww 様
    https://code-jump.com/photo2-menu/
    こちらのサイトの問題です。

    @albireo 様
    足し算されるわけではなく、優先度の高いものが適用
    =margin-bottom:20pxが適用されている、ということでしょうか。
    であれば、なぜデザインカンプでは24pxであるのに、実際のデモサイトは20pxで作成されているのでしょうか・・?

  5. 「であれば」ではないです
    「20pxを指定しているのに24pxのマージンがある」

    「マージンがmargin-block-start/margin-block-endとmargin-top/margin-bottomの合計値にならない」
    はまったく別の話です。

    前者の方は、まず「ディベロッパーツールを見て当該要素に最終的にどのようにスタイルが適用されているか」を確認することが大事です。つまりまだ何もわかっていない状態。

  6. 問題を再現できる必要最低限(あくまで必要最低限でお願いします)のコードで、コピペすれば試せるものを提示できますか?・・・とお願いしましたが、やる気なしですか? 

    あなたが提示したサイトの記事を上から下まで見てほしいと言ってますか? 自分は見る気はしませんのでここからは撤退ます。

  7. @twotwotwotoo2

    Questioner

    こちらで質問するにはまだまだ初心者すぎたようです><
    失礼しました。
    ご回答いただいた皆様、ありがとうございました。
    ご気分を害された方、大変失礼しました。
    もう少し学習を深めたいと思います。

元からある設定値と、自分で設定した値とでプラスになる。と思っているということでしょうか?
CSSは 上書き です。
例えば、デフォルトで<p>タグのmargin-bottomに2emが設定されていたとしても、
「#detail .text p」に
「margin-bottom:20px;」
と設定すると、その設定値に上書きされます。

0Like

Comments

  1. @twotwotwotoo2

    Questioner

    ということは、デモサイトも意図的に20pxで作成しているということですよね。
    であれば、なぜデザインカンプでは24pxであるのに、実際のデモサイトは20pxで作成されているのでしょうか・・?

Your answer might help someone💌