Heim  >  Artikel  >  Web-Frontend  >  Vertiefendes Verständnis des Margin-Attributs in CSS

Vertiefendes Verständnis des Margin-Attributs in CSS

巴扎黑
巴扎黑Original
2017-06-28 13:34:201807Durchsuche
<p>Umfassendes Verständnis des Margin-Attributs in CSS</p> <p> Früher dachte ich, das Margin-Attribut sei ein sehr einfaches Attribut, aber kürzlich bin ich bei der Arbeit an einem Projekt auf einige Probleme gestoßen und habe festgestellt, dass das Das Margin-Attribut weist noch einige „Gruben“ auf. Im Folgenden werde ich das Grundwissen über Marge und diese „Gruben“ vorstellen. Dieser Blog-Beitrag ist hauptsächlich in die folgenden Teile unterteilt: </p> <ul class=" list-paddingleft-2"> <li><p>Margin – Grundwissen</p></li> <li><p>Margin – auf der gleichen Ebene Element (nicht -Eltern-Kind-Anwenden </p></li> <li><p>Marge zwischen Beziehung) – Anwenden (<strong>Hervorhebung</strong>) zwischen übergeordnetem Element und untergeordnetem Element </p></li> <li> <p>Margin – Mehrere Situationen, in denen die Einheit des Margenwerts % ist</p> <p> </p> </li> </ul> <h2>Teil 1: Marge – Grundkenntnisse</h2> <p> Zur Einführung in die Grundlagen Aufgrund des Randwissens können wir nicht umhin, über <a href="http://www.php.cn/code/790.html" target="_blank">CSS-Box-Modell</a> (Box-Modell) zu sprechen. Im Allgemeinen wird das CSS-Box-Modell für Design und Layout verwendet. Es handelt sich im Wesentlichen um eine Box, die Folgendes umfasst: Rand, Rand, Innenabstand und den mittleren Inhalt. Das Bild unten ist das Box-Modell (hier sprechen wir nur über das Standard-Box-Modell der W3C-Spezifikation, nicht über das nicht standardmäßige Box-Modell, das in IE5 und IE6 im seltsamen Modus verwendet wird): </p> <p> <img src="https://img.php.cn/upload/article/000/000/007/d27cd8e47c9fd00076f4232fc6379b18-0.png" alt="" style="max-width:90%" style="max-width:90%"></p> <p> Der Rand, den wir einführen werden, befindet sich auf der äußersten Ebene. Da der Rand transparent sein muss, kann er verwendet werden, um eine gewisse Lücke zwischen verschiedenen Feldern zu lassen, um ein schönes Layout und andere Effekte zu erzielen. Aus dem Kastenmodell oben können wir ersehen, dass rundherum Ränder vorhanden sind. Wir können diese mit margin-top, <a href="http://www.php.cn/wiki/934.html" target="_blank">margin-right</a>, <a href="http://www.php.cn/wiki/935.html" target="_blank">margin-bottom</a> bzw. margin-left festlegen . Margenwerte in vier Richtungen. (Hinweis: Da dieser Teil des Wissens relativ grundlegend ist, werde ich in diesem Teil nicht mehr vorstellen) </p> <p> </p> <p> </p> <h2>Teil 2: Rand – gleichzeitig Anwendung von </h2> <p> zwischen Ebenenelementen (Nicht-Eltern-Kind-Beziehung) In diesem Teil wird hauptsächlich die Zusammenführung horizontaler und vertikaler Ränder vorgestellt. </p> <h2> (1) Horizontale Ränder verschmelzen </h2> <p>  <strong> Wenn zwei horizontale Kästchen aufeinander treffen, ist der endgültige Abstand zwischen ihnen der rechte Rand des linken Kästchens und das rechte Kästchen ergibt die Summe der Ränder . </strong></p> <p><strong>Beispiel 1: </strong></p> <p><strong> Der Code lautet wie folgt: </strong></p> <p><strong></strong></p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody><tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25 </p> <p class="line number26 index25 alt1">26</p> <p class="line number27 index26 alt2">27</p> <p class="line number28 index27 alt1">28</p> <p class="line number29 index28 alt2">29</p> <p class="line number30 index29 alt1">30</p> <p class="line number31 index30 alt2">31</p> <p class="line number32 index31 alt1">32</p> <p class="line number33 index32 alt2">33</p> <p class="line number34 index33 alt1">34</p> <p class="line number35 index34 alt2">35</p> <p class="line number36 index35 alt1">36</p> <p class="line number37 index36 alt2">37</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>水平方向的两个盒子</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"><code class="html spaces">        </code><code class="html plain">*{</code></p> <p class="line number8 index7 alt1"><code class="html spaces">            </code><code class="html plain">margin:0;</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code><code class="html plain">padding:0;</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">border:0;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number12 index11 alt1"><code class="html spaces">        </code><code class="html plain">body{</code></p> <p class="line number13 index12 alt2"><code class="html spaces">            </code><code class="html plain">font-size: 0;</code></p> <p class="line number14 index13 alt1"><code class="html spaces">        </code> <code class="html plain">}</code></p> <p class="line number15 index14 alt2"><code class="html spaces">        </code><code class="html plain">.left{</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">            </code><code class="html plain">display: inline-block;</code></p> <p class="line number20 index19 alt1"><code class="html spaces">            </code><code class="html plain">margin-right: 50px;</code></p> <p class="line number21 index20 alt2"><code class="html spaces">            </code><code class="html plain">font-size: 20px;</code></p> <p class="line number22 index21 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number23 index22 alt2"><code class="html spaces">        </code><code class="html plain">.right{</code></p> <p class="line number24 index23 alt1"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number25 index24 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number26 index25 alt1"><code class="html spaces">            </code><code class="html plain">background: yellow;</code></p> <p class="line number27 index26 alt2"><code class="html spaces">            </code><code class="html plain">display: inline-block;</code></p> <p class="line number28 index27 alt1"><code class="html spaces">            </code><code class="html plain">margin-left: 50px;</code></p> <p class="line number29 index28 alt2"><code class="html spaces">            </code><code class="html plain">font-size: 20px;</code></p> <p class="line number30 index29 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number31 index30 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number32 index31 alt1"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number33 index32 alt2"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number34 index33 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="left">宽为100px,右边距为50px</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number35 index34 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="right">宽为100px,左边距为50px</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number36 index35 alt1"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number37 index36 alt2"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody></table> <p> Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/d27cd8e47c9fd00076f4232fc6379b18-1.png" alt=""></p> <p>Zu diesem Zeitpunkt beträgt der Abstand zwischen den beiden genau 100 Pixel. </p> <p> Ergänzende Erklärung: Wie Sie sehen können, habe ich das display:inline-block-Attribut verwendet, um die beiden p (Blockelemente) aus dem normalen Dokumentenfluss zu machen, <strong> Darüber hinaus habe ich Setzen Sie auch den Körper. Setzen Sie die Schriftgröße auf 0, was das Problem des Inline-Blocks selbst lösen kann (</strong>Wenn Ihnen die Beschreibung hier nicht klar ist, können Sie meinen Blog-Beitrag „Verstehen und Anwenden des Anzeigeattributs in CSS“ lesen ", dieser Artikel stellt Inline-Block-Probleme vor <strong>), </strong> andernfalls sind die beiden p-Beispiele größer als 100 Pixel. Natürlich können Sie auch float verwenden, um zwei p in derselben Zeile erscheinen zu lassen. </p> <p> </p> <h2> (2) Die vertikalen Ränder verschmelzen </h2> <p> <strong>Wenn sich zwei vertikale Kästchen treffen, ist der vertikale Abstand gleich dem oberen Kästchen. Je größer der untere Rand von der Box unten und dem oberen Rand der Box unten. </strong></p> <p><strong>Beispiel 2: </strong></p> <p><strong> ></strong></p> <p class="cnblogs_Highlighter sh-gutter"><br></p>1<p class="syntaxhighlighter html"><br> 2</p> <table border="0">3<tbody><tr class="firstRow">4<td class="gutter"> <p class="line number1 index0 alt2">5</p> <p class="line number2 index1 alt1">6</p> <p class="line number3 index2 alt2">7</p> <p class="line number4 index3 alt1">8</p> <p class="line number5 index4 alt2">9 </p> <p class="line number6 index5 alt1">10</p> <p class="line number7 index6 alt2">11</p> <p class="line number8 index7 alt1">12</p> <p class="line number9 index8 alt2">13</p> <p class="line number10 index9 alt1">14</p> <p class="line number11 index10 alt2">15</p> <p class="line number12 index11 alt1">16</p> <p class="line number13 index12 alt2">17</p> <p class="line number14 index13 alt1">18</p> <p class="line number15 index14 alt2">19</p> <p class="line number16 index15 alt1">20 </p> <p class="line number17 index16 alt2">21</p> <p class="line number18 index17 alt1">22</p> <p class="line number19 index18 alt2">23</p> <p class="line number20 index19 alt1">24</p> <p class="line number21 index20 alt2">25</p> <p class="line number22 index21 alt1">26</p> <p class="line number23 index22 alt2">27</p> <p class="line number24 index23 alt1">28</p> <p class="line number25 index24 alt2">29</p> <p class="line number26 index25 alt1">30</p> <p class="line number27 index26 alt2"></p> <p class="line number28 index27 alt1"></p> <p class="line number29 index28 alt2"></p> <p class="line number30 index29 alt1"></p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code><code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code><code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"> <code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code><code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>水平方向的两个盒子</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"><code class="html spaces">        </code> <code class="html plain">*{</code></p> <p class="line number8 index7 alt1"><code class="html spaces">            </code><code class="html plain">margin:0;</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code><code class="html plain">padding:0;</code> </p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">border:0;</code></p> <p class="line number13 index12 alt2"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number14 index13 alt1"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">margin-bottom: 100px;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number18 index17 alt1"><code class="html spaces">        </code><code class="html plain">.bottom{</code></p> <p class="line number19 index18 alt2"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number20 index19 alt1"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number21 index20 alt2"><code class="html spaces">            </code><code class="html plain">margin-top: 50px;</code></p> <p class="line number22 index21 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number23 index22 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number24 index23 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number27 index26 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="top">高为100px,下边距为100px</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number28 index27 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="bottom">高为100px,上边距为50px</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number29 index28 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number30 index29 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody> </table> <p> Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/d27cd8e47c9fd00076f4232fc6379b18-2.png" alt=""></p> <p>Zu diesem Zeitpunkt können wir ihn mit bloßem Auge beobachten. Die vertikale Richtung der beiden Beispiele beträgt etwa 100 Pixel (eigentlich 100 Pixel). ) statt 100+50 =150px; Dies liegt genau daran, dass <strong> wenn zwei vertikale Boxen aufeinandertreffen, der vertikale Abstand dem größeren Wert aus dem unteren Rand der oberen Box und dem oberen Rand der unteren Box entspricht. </strong></p> <p><strong> </strong></p> <p><strong> Ein weiteres interessantes Beispiel ist: Angenommen, es gibt ein Element mit gleichzeitig gesetztem Rand oben und Rand unten, aber das Wenn der Inhalt leer ist, werden auch die beiden Randwerte überlagert und der Wert ist der größte der beiden. Dies ähnelt der Überlagerung der Randwerte zweier Felder in vertikaler Richtung. Der Code lautet wie folgt: </strong></p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody><tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2 </p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1"> 16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23 </p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> <p class="line number27 index26 alt2">27</p> <p class="line number28 index27 alt1">28</p> <p class="line number29 index28 alt2">29</p> <p class="line number30 index29 alt1">30</p> <p class="line number31 index30 alt2">31</p> <p class="line number32 index31 alt1">32</p> <p class="line number33 index32 alt2">33</p> <p class="line number34 index33 alt1">34</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>水平方向的两个盒子</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"> <code class="html spaces">        </code><code class="html plain">*{</code></p> <p class="line number8 index7 alt1"><code class="html spaces">            </code><code class="html plain">margin:0;</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code><code class="html plain">padding:0;</code></p> <p class="line number10 index9 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number11 index10 alt2"> </p> <p class="line number12 index11 alt1"><code class="html spaces">        </code><code class="html plain">.top{</code></p> <p class="line number13 index12 alt2"><code class="html spaces">            </code><code class="html plain">width: 500px;</code></p> <p class="line number14 index13 alt1"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number17 index16 alt2"><code class="html spaces">        </code><code class="html plain">.middle{</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">margin-top: 100px;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">            </code><code class="html plain">margin-bottom:50px;</code></p> <p class="line number20 index19 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number21 index20 alt2"><code class="html spaces">        </code><code class="html plain">.footer{</code></p> <p class="line number22 index21 alt1"><code class="html spaces">            </code><code class="html plain">width: 500px;</code></p> <p class="line number23 index22 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number24 index23 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number25 index24 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number26 index25 alt1"> </p> <p class="line number27 index26 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number28 index27 alt1"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number29 index28 alt2"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number30 index29 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="top">上面的p,高100px</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number31 index30 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="middle"></</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number32 index31 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="footer">下面的p,高100px</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number33 index32 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number34 index33 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody></table> <p> Der endgültige Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/d27cd8e47c9fd00076f4232fc6379b18-3.png" alt=""></p> <p> Wir haben festgestellt, dass das Beispiel zwischen dem p oben und dem p unten nicht 100 + 50 = 150 Pixel beträgt, sondern das größte von die beiden, das ist 100px. </p> <p><strong> </strong></p> <p> Warum setzt W3C dann einen solchen Standard, anstatt denselben Standard wie die horizontale Richtung festzulegen? Das heißt, die Überlagerung von Randwerten, die tatsächlich Sinn macht. Beispielsweise müssen wir eine Seite entwerfen, die aus mehreren Absätzen besteht. Wir müssen margin-top und margin-bottom so festlegen, dass ein Abstand zwischen dem ersten Absatz und dem oberen Rand der Seite sowie ein Abstand zwischen dem letzten Absatz und dem unteren Rand besteht. Im Folgenden sind die Darstellungen ohne Überlagerung und Überlagerung aufgeführt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/d27cd8e47c9fd00076f4232fc6379b18-4.png" alt=""></p> <p> Wir können sehen, dass sich die Seite links nicht überlappt, sodass das Beispiel zwischen den beiden Absätzen den doppelten Abstand aufweist Die obere Seite und die rechte Seite überlappen sich, alle Abstände sind gleich. Vielleicht ist das der Zweck, solche Standards festzulegen, wer weiß? </p> <p> </p> <p> </p> <h2>Teil 3: Rand – angewendet zwischen übergeordneten Elementen und untergeordneten Elementen (<strong>Wichtige Punkte</strong>)</h2> <p>Zweiter Der Teil stellt die Verwendung von Rändern zwischen Geschwisterelementen vor, und in diesem Teil wird die interessanteste Anwendung von Rändern zwischen übergeordneten Elementen und untergeordneten Elementen vorgestellt. In diesem Teil diskutieren wir es auch unter zwei Gesichtspunkten. Einerseits legen die untergeordneten Elemente den Randwert in horizontaler Richtung fest, und andererseits legen die untergeordneten Elemente den Randwert in vertikaler Richtung fest. </p> <h3> (1) Legen Sie den horizontalen Randwert im untergeordneten Element fest. </h3> <p> Wir können margin-left festlegen, um die Beziehung zwischen dem linken Rand des untergeordneten Elements und dem linken Rand des übergeordneten Elements zu steuern . </p> <p>Beispiel 3: </p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody><tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1"> 16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23 </p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>margin</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"><code class="html spaces">        </code> <code class="html plain">*{padding:0; margin:0; border:0;}</code></p> <p class="line number8 index7 alt1"><code class="html spaces">        </code><code class="html plain">.father{</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code><code class="html plain">width: 500px;</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">height: 500px;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number12 index11 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number13 index12 alt2"><code class="html spaces">        </code><code class="html plain">.son{</code></p> <p class="line number14 index13 alt1"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">margin-left: 100px;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number19 index18 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number20 index19 alt1"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number21 index20 alt2"><code class="html plain"><</code><code class="html keyword">body</code> <code class="html plain">></code></p> <p class="line number22 index21 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="father"></code></p> <p class="line number23 index22 alt2"><code class="html spaces">        </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="son">宽度为100px,margin-left为100px。</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number24 index23 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody></table> <p> Ich habe den linken Rand des untergeordneten Elements auf 100 Pixel eingestellt. Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/b14182e42c329966dffd9ff54c3928c5-5.png" alt="" style="max-width:90%" style="max-width:90%"></p> <p>Das heißt, der Abstand zwischen dem linken Rand des untergeordneten Elements und der linke Rand des übergeordneten Elements beträgt 100 Pixel. <strong>Es unterscheidet sich vom Festlegen des Abstands zwischen Elementen derselben Ebene, da der Abstand zwischen Elementen derselben Ebene den Abstand nicht berücksichtigt, aber er unterscheidet sich zwischen dem übergeordneten Element und dem untergeordneten Element, wenn ein Abstand vorhanden ist Der Effekt des übergeordneten Elements ist Welche Art? </strong>Bitte sehen Sie sich das folgende Beispiel an: </p> <p> Beispiel 4: </p> <p> Als nächstes fügen wir basierend auf dem obigen Beispiel einen Füllwert zum übergeordneten Element hinzu. </p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody><tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2"> 3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10 </p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> <p class="line number27 index26 alt2">27</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>margin</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"><code class="html spaces">        </code><code class="html plain">*{padding:0; margin:0; border:0;}</code></p> <p class="line number8 index7 alt1"><code class="html spaces">        </code><code class="html plain">.father{</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code><code class="html plain">width: 500px;</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">height: 500px;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">            </code><code class="html plain">padding:100px;</code></p> <p class="line number12 index11 alt1"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number13 index12 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number14 index13 alt1"><code class="html spaces">        </code><code class="html plain">.son{</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">margin-left: 100px;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number20 index19 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number21 index20 alt2"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number22 index21 alt1"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number23 index22 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="father"></code></p> <p class="line number24 index23 alt1"><code class="html spaces">        </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="son">宽度为100px,margin-left为100px。</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">p</code> <code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number27 index26 alt2"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody></table> <p> Der obige Code fügt dem übergeordneten Element einen Füllwert von 100 Pixel hinzu. Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/b14182e42c329966dffd9ff54c3928c5-6.png" alt="" style="max-width:90%" style="max-width:90%"></p> <p>Wir können sehen, dass der Abstand über dem untergeordneten Element 100 Pixel beträgt. weil das untergeordnete Element Es muss sich im Inhaltsteil des übergeordneten Elements befinden, daran besteht kein Zweifel. </p> <p><strong>Aber nach der Messung kann festgestellt werden, dass der Abstand zwischen dem linken Rand des untergeordneten Elements und dem linken Rand des übergeordneten Elements 200 Pixel beträgt</strong>, da es auch einen linken Auffüllwert gibt Das vorherige Beispiel liegt daran, dass der Füllwert nicht festgelegt ist. <strong> Dies bedeutet, dass margin-left tatsächlich der Abstand zwischen dem linken Rand ist des untergeordneten Elements und der Innenseite der linken Polsterung des übergeordneten Elements. </strong></p> <p> </p> <p> Beispiel 5: Die Verwendung von margin-right ähnelt der Verwendung von margin-left. Ich werde hier nur ein Beispiel geben. </p> <p>In diesem Beispiel wird der Wert für den rechten Rand im untergeordneten Element wie folgt festgelegt: </p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody> <tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7 </p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21 </p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> <p class="line number27 index26 alt2">27</p> <p class="line number28 index27 alt1">28</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"> <code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>margin</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"><code class="html spaces">        </code><code class="html plain">*{padding:0; margin:0; border:0;}</code></p> <p class="line number8 index7 alt1"><code class="html spaces">        </code><code class="html plain">.father{</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code> <code class="html plain">width: 500px;</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">height: 500px;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">            </code><code class="html plain">padding:100px;</code></p> <p class="line number12 index11 alt1"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number13 index12 alt2"><code class="html spaces">        </code> <code class="html plain">}</code></p> <p class="line number14 index13 alt1"><code class="html spaces">        </code><code class="html plain">.son{</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">float: right;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">            </code><code class="html plain">margin-right: 100px;</code></p> <p class="line number20 index19 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number21 index20 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number22 index21 alt1"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number23 index22 alt2"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number24 index23 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="father"></code></p> <p class="line number25 index24 alt2"><code class="html spaces">        </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="son">宽度为100px,margin-right为100px。</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number27 index26 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number28 index27 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr> </tbody></table> <p> Der Unterschied zwischen diesem Beispiel und Beispiel 4 besteht nur in der Position der untergeordneten Elemente. Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/b14182e42c329966dffd9ff54c3928c5-7.png" alt="" style="max-width:90%" style="max-width:90%"></p> <p>Dieses Beispiel von <strong> kann veranschaulichen, dass der Wert von margin-right der Abstand </strong> zwischen dem rechten Rand des untergeordneten Elements ist und die Innenseite der rechten Polsterung des übergeordneten Elements. Es ist nur so, dass ich in den vorherigen Beispielen keine Polsterung verwendet habe, sodass ich es nicht beobachten konnte. </p> <p> </p> <p> </p> <p> </p> <h3> (2) Legen Sie den vertikalen Randwert im untergeordneten Element fest </h3> <p> Gemäß der bisherigen Erfahrung, Theorie Apropos Davon können wir auch den Wert von margin-top so festlegen, dass zwischen dem oberen Rand des <strong> untergeordneten Elements und der Innenseite </strong> der oberen Polsterung des übergeordneten Elements ein bestimmter Abstand besteht. Dann lass es uns versuchen! </p> <p>Beispiel 6: </p> <p> </p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody><tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1"> 8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15 </p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>margin</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number7 index6 alt2"><code class="html spaces">        </code><code class="html plain">*{padding:0; margin:0; border:0;}</code></p> <p class="line number8 index7 alt1"><code class="html spaces">        </code><code class="html plain">.father{</code></p> <p class="line number9 index8 alt2"><code class="html spaces">            </code><code class="html plain">width: 500px;</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">height: 500px;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number12 index11 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number13 index12 alt2"><code class="html spaces">        </code><code class="html plain">.son{</code></p> <p class="line number14 index13 alt1"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">margin-top: 100px;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number19 index18 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number20 index19 alt1"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number21 index20 alt2"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number22 index21 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="father"></code></p> <p class="line number23 index22 alt2"><code class="html spaces">        </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="son">高度为100px,margin-top为100px。</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number24 index23 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">p</code> <code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody></table> <p> In diesem Beispiel habe ich den oberen Rand auf 100 Pixel eingestellt und der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/b14182e42c329966dffd9ff54c3928c5-8.png" alt="" style="max-width:90%" style="max-width:90%"></p> <p><strong>Das ist nicht der Effekt, den wir wollen Ich möchte, dass die untergeordneten Elemente 100 Pixel vom oberen Teil des übergeordneten Elements entfernt sind. Wir sehen jedoch, dass der obere Teil des übergeordneten Elements 100 Pixel vom oberen Teil der Browserseite entfernt ist. Was ist schief gelaufen? </strong></p> <p><strong> </strong></p> <p><strong> Tatsächlich liegt dies daran, dass ein Fehler auftritt, wenn das übergeordnete Element den Füllwert und den Randwert nicht festlegt - das übergeordnete Element Die Oberseite und die Oberseite des untergeordneten Elements überlappen sich vollständig und können nicht getrennt werden. Aus diesem Grund bewegen sich das oben erwähnte übergeordnete Element und das untergeordnete Element gleichzeitig nach unten. </strong></p> <p><strong> Es gibt mehrere Lösungen für dieses Problem: </strong></p> <ul class=" list-paddingleft-2"> <li><p><strong>Methode 1: Fügen Sie padding hinzu -top<a href="http://www.php.cn/wiki/949.html" target="_blank">Wert</a></strong></p></li> <li><p>Methode 2: Randwert zum übergeordneten Element hinzufügen<strong></strong></p></li> <li> <p>Methode 3: Fügen Sie das Attribut overflow:hidden; hinzu<strong></strong></p> </li> <li><p>Methode 4: Deklarieren Sie float <strong></strong></p></li> <li> <p>Methode 5: Deklarieren Sie das übergeordnete oder untergeordnete Element als <strong>absolut positioniert<a href="http://www.php.cn/code/6074.html" target="_blank">: position:absolute;</a></strong></p> </li> <li> <p>Methode 6: Hinzufügen Attribute zum übergeordneten Element <strong> overflow:auto; positon:relative; (Hinweis: Diese Methode wird später hinzugefügt, danke an Blogger @小elvesPawn für die Bereitstellung dieser Methode) </strong></p> </li> </ul> <p>Methode 1: Fügen Sie basierend auf Beispiel 6 padding-top:1px in den CSS-Code des übergeordneten Elements ein. Der Effekt ist wie folgt: <strong></strong></p> <p><strong><img src="https://img.php.cn/upload/article/000/000/007/b14182e42c329966dffd9ff54c3928c5-9.png" alt="" style="max-width:90%" style="max-width:90%"></strong></p> <p></p> <p> Der einzige Nachteil der Methode besteht darin, dass sie den Fehler um 1 Pixel erhöht. <strong></strong></p> <p> <strong></strong></p> <p>Methode 2: Fügen Sie basierend auf Beispiel 6 border-top:1px solid transparent im CSS-Code des übergeordneten Elements hinzu Der Effekt ist wie folgt: <strong></strong></p> <p><strong><img src="https://img.php.cn/upload/article/000/000/007/424a4b2edfa6594d295cefdcd1ee676f-10.png" alt="" style="max-width:90%" style="max-width:90%"></strong></p> <p></p> <p> erzielt auch den gleichen Effekt, aber die Nachteile sind die gleichen als Methode eins. <strong></strong></p> <p> <strong></strong></p> <p>Methode 3: Fügen Sie basierend auf Beispiel 6 overflow: versteckt im CSS-Code des übergeordneten Elements hinzu. Der Effekt ist wie folgt : <strong></strong></p> <p> <strong><strong><img src="https://img.php.cn/upload/article/000/000/007/424a4b2edfa6594d295cefdcd1ee676f-11.png" alt="" style="max-width:90%" style="max-width:90%"></strong></strong></p> <p></p> <p> erzielt den Effekt auch ohne Fehler. Es ist perfekt!!! Fügen Sie float:left; zum CSS-Code hinzu, um den Effekt zu erzielen. <strong></strong></p> <p> Vorteile: Kein Pixelfehler. Nachteile: Float ist manchmal unnötig. <strong></strong></p> <p><strong></strong> Methode 5: Fügen Sie das Attribut position:absolute; zum übergeordneten Element oder untergeordneten Element hinzu. Der gleiche Effekt wird erzielt. </p> <p><strong></strong> Vorteile: Wie Methode vier. Und solange wir oben und links nicht verwenden, gibt es keine Auswirkungen, daher ist dies auch eine gute Methode. </p> <p></p> (Erklärung: Blog-Freund @laden666666 wies darauf hin, dass die oben genannten Methoden drei, vier und fünf tatsächlich Methoden sind, um den Spielraum untergeordneter Elemente vom Eindringen in den übergeordneten Container abzuhalten. Sie können als BFC-Methode klassifiziert werden und sind im Wesentlichen gleich. <p><strong> </strong>Methode 6: Fügen Sie overflow:auto; zum übergeordneten Element hinzu, um den gleichen Effekt zu erzielen. </p> <p><strong></strong> Diese Methode wurde persönlich getestet und ist effektiv. Sie wird vom Blogger @小elvesPawn bereitgestellt. Ich möchte meinen Dank aussprechen. </p> <p></p> <p><strong> </strong></p>Teil 4: Mehrere Situationen, in denen die Einheit des Margin-Werts % ist<p><strong> Ich habe zuvor bei der Angabe der Werte Margin verwendet ​​sind alle in px, daher gibt es kein Problem, dies zu verstehen. </strong>Aber was ist, wenn der Margenwert in % angegeben ist? Tatsächlich ist der Prozentsatz (%) zu diesem Zeitpunkt relativ zum übergeordneten Element (Container) des Elements, und dies gilt sowohl für Geschwisterelemente als auch für übergeordnete und untergeordnete Elemente. (</p>Nochmals vielen Dank an den Vorschlag von Blogger @小elvesPawn!! Dieser Teil des Inhalts wird auf der Grundlage dieses Vorschlags ergänzt.) Bei der Verwendung vertikaler Ränder in Elementen derselben Ebene treten jedoch unerwartete Ergebnisse auf. Hier ist ein Beispiel . <p></p> (1) Elemente derselben Ebene verwenden einen Abstand von % in horizontaler Richtung <p></p> Beispiel 7: <h2></h2> <p><strong></strong></p> <h3></h3> <p></p> <p></p> <p class="cnblogs_Highlighter sh-gutter"><br>1</p> <p class="syntaxhighlighter html">2<br></p>3<table border="0"> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2"> 25</p> <p class="line number26 index25 alt1">26</p> <p class="line number27 index26 alt2">27</p> <p class="line number28 index27 alt1">28</p> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number2 index1 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number3 index2 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>margin</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"> <code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number5 index4 alt2"><code class="html spaces">        </code><code class="html plain">*{</code></p> <p class="line number6 index5 alt1"><code class="html spaces">            </code><code class="html plain">margin:0;</code></p> <p class="line number7 index6 alt2"><code class="html spaces">            </code><code class="html plain">padding:0;</code></p> <p class="line number8 index7 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number9 index8 alt2"><code class="html spaces">        </code><code class="html plain">.first{</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">float: left;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">            </code><code class="html plain">width: 200px;</code></p> <p class="line number12 index11 alt1"><code class="html spaces">            </code><code class="html plain">height: 200px;</code></p> <p class="line number13 index12 alt2"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number14 index13 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number15 index14 alt2"><code class="html spaces">        </code><code class="html plain">.second{</code></p> <p class="line number16 index15 alt1"> <code class="html spaces">            </code><code class="html plain">float: left;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">width: 200px;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">height: 200px;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number20 index19 alt1"><code class="html spaces">            </code><code class="html plain">margin-left: 20%;</code></p> <p class="line number21 index20 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number22 index21 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number23 index22 alt2"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number24 index23 alt1"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="first">宽为200,无margin</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="second">宽为200,margin-left为20%;</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number27 index26 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number28 index27 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </table> <p> </p> <p>In diesem Beispiel sind die beiden Elemente so eingestellt, dass sie nach links schweben, sodass der horizontale Rand der beiden Elemente leicht beobachtet werden kann. Unter diesen hat das linke p keinen Rand und der Rand links vom rechten p beträgt 20 %. Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/424a4b2edfa6594d295cefdcd1ee676f-12.gif" alt="" style="max-width:90%" style="max-width:90%"></p> <p><strong> Aus der Darstellung , können Sie den Abstand zwischen den beiden p sehen. Es beträgt immer 20 % des übergeordneten Elements (das übergeordnete Element von p rechts hier ist body und seine Breite entspricht der Browserbreite). </strong></p> <p> </p> <p> </p> <h3> (2) Elemente derselben Ebene verwenden einen Abstand von % in vertikaler Richtung </h3> <p> Basierend auf der Inspiration aus Beispiel 7, wir können davon ausgehen, dass, wenn Sie den Rand in vertikaler Richtung verwenden und die Einheit des Werts % ist, der endgültige Abstand zwischen den beiden ein Prozentsatz des übergeordneten Elements (Körper im obigen Beispiel) ist. Ist das also wirklich so? Siehe das Beispiel unten. </p> <p><strong>Beispiel 8</strong></p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"><br></p> <table border="0"><tbody><tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2"> 1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5</p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8 </p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"><code class="html plain"><</code> <code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number2 index1 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> <code class="html plain">charset="UTF-8"></code></p> <p class="line number3 index2 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>margin</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number5 index4 alt2"><code class="html spaces">        </code><code class="html plain">*{</code></p> <p class="line number6 index5 alt1"><code class="html spaces">            </code><code class="html plain">margin:0;</code></p> <p class="line number7 index6 alt2"><code class="html spaces">            </code><code class="html plain">padding:0;</code></p> <p class="line number8 index7 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number9 index8 alt2"><code class="html spaces">        </code><code class="html plain">.first{</code></p> <p class="line number10 index9 alt1"><code class="html spaces">            </code><code class="html plain">width: 200px;</code></p> <p class="line number11 index10 alt2"><code class="html spaces">            </code><code class="html plain">height: 200px;</code> </p> <p class="line number12 index11 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number13 index12 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number14 index13 alt1"><code class="html spaces">        </code><code class="html plain">.second{</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">width: 200px;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">            </code><code class="html plain">height: 200px;</code></p> <p class="line number17 index16 alt2"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">margin-top: 10%;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number20 index19 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number21 index20 alt2"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number22 index21 alt1"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number23 index22 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="first">高为200,无margin</</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number24 index23 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="second">高为200,margin-top为20%;</</code><code class="html keyword">p</code> <code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr></tbody></table> <p>Hier hat das obere p keinen Rand und der obere Rand des unteren p beträgt 10. Der Effekt ist wie folgt: </p> <p><img src="https://img.php.cn/upload/article/000/000/007/73737215d222f61d1e7c7f1447c45d1b-13.gif" alt="" style="max-width:90%" style="max-width:90%"></p> <p><strong> </strong></p> <p><strong>Wir haben festgestellt, dass, wenn ich die Höhe des Browsers verkleinere, im vertikale Richtung Der Abstand wurde nicht verringert! ! ! Und wenn ich die Breite des Browsers verkleinere, verringert sich der vertikale Abstand! ! ! </strong></p> <p><strong>Dies bedeutet: Der Abstand wird in vertikaler Richtung zwischen statistischen Elementen verwendet. Wenn die Werteinheit % ist, ist sie relativ zur Breite des übergeordneten Elements. </strong></p> <p><strong> Warum ist es dann nicht die Höhe relativ zum Browser, die wir wollen? Ein Meister auf Zhihu hat es so erklärt (ursprüngliche Adresse: https://www.zhihu.com/question/20983035?rf=27109182): </strong></p> <p><strong><img src="https://img.php.cn/upload/article/000/000/007/ba8858fe462ad9a8fb9cdcbc308e9ef1-14.png" alt="" style="max-width:90%" style="max-width:90%"></strong> </p> <p> </p> <h3></h3> <h3> </h3> <h3> (3) Übergeordnete und untergeordnete Elemente verwenden einen Rand mit einem Wert von %</h3> <p><strong>Für übergeordnete und untergeordnete Elemente untergeordnete Elemente, wenn die in untergeordneten Elementen verwendete Einheit %margin ist, dann ist der Randwert relativ zur Breite und Höhe des übergeordneten Elements (Hinweis: Dies ist tatsächlich relativ zur Höhe des übergeordneten Elements!). </strong></p> <p>  <strong>Beispiel 9 </strong></p> <p><strong> </strong>Der Code lautet wie folgt: </p> <p class="cnblogs_Highlighter sh-gutter"><br></p> <p class="syntaxhighlighter html"> <br> </p> <table border="0"><tbody> <tr class="firstRow"> <td class="gutter"> <p class="line number1 index0 alt2">1</p> <p class="line number2 index1 alt1">2</p> <p class="line number3 index2 alt2">3</p> <p class="line number4 index3 alt1">4</p> <p class="line number5 index4 alt2">5 </p> <p class="line number6 index5 alt1">6</p> <p class="line number7 index6 alt2">7</p> <p class="line number8 index7 alt1">8</p> <p class="line number9 index8 alt2">9</p> <p class="line number10 index9 alt1">10</p> <p class="line number11 index10 alt2">11</p> <p class="line number12 index11 alt1">12</p> <p class="line number13 index12 alt2">13</p> <p class="line number14 index13 alt1">14</p> <p class="line number15 index14 alt2">15</p> <p class="line number16 index15 alt1">16</p> <p class="line number17 index16 alt2">17</p> <p class="line number18 index17 alt1">18</p> <p class="line number19 index18 alt2">19</p> <p class="line number20 index19 alt1">20</p> <p class="line number21 index20 alt2">21</p> <p class="line number22 index21 alt1">22</p> <p class="line number23 index22 alt2">23</p> <p class="line number24 index23 alt1">24</p> <p class="line number25 index24 alt2">25</p> <p class="line number26 index25 alt1">26</p> <p class="line number27 index26 alt2">27</p> <p class="line number28 index27 alt1">28</p> <p class="line number29 index28 alt2">29</p> <p class="line number30 index29 alt1">30</p> <p class="line number31 index30 alt2">31</p> </td> <td class="code"> <p class="container"><br></p> <p class="line number1 index0 alt2"> <code class="html plain"><!</code><code class="html keyword">DOCTYPE</code> <code class="html plain">html></code></p> <p class="line number2 index1 alt1"><code class="html plain"><</code><code class="html keyword">html</code> <code class="html plain">lang="en"></code></p> <p class="line number3 index2 alt2"><code class="html plain"><</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number4 index3 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">meta</code> 🎜><code class="html plain">charset="UTF-8"></code></p> <p class="line number5 index4 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">title</code><code class="html plain">>Document</</code><code class="html keyword">title</code><code class="html plain">></code></p> <p class="line number6 index5 alt1"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number11 index10 alt2"><code class="html spaces">        </code><code class="html plain">.father{</code></p> <p class="line number12 index11 alt1"><code class="html spaces">            </code><code class="html plain">width: 500px;</code></p> <p class="line number13 index12 alt2"><code class="html spaces">            </code><code class="html plain">height: 300px;</code></p> <p class="line number14 index13 alt1"><code class="html spaces">            </code><code class="html plain">background: red;</code></p> <p class="line number15 index14 alt2"><code class="html spaces">            </code><code class="html plain">overflow: hidden;</code></p> <p class="line number16 index15 alt1"><code class="html spaces">        </code><code class="html plain">}</code></p> <p class="line number17 index16 alt2"><code class="html spaces">        </code><code class="html plain">.son{</code></p> <p class="line number18 index17 alt1"><code class="html spaces">            </code><code class="html plain">width: 100px;</code></p> <p class="line number19 index18 alt2"><code class="html spaces">            </code><code class="html plain">height: 100px;</code></p> <p class="line number20 index19 alt1"><code class="html spaces">            </code><code class="html plain">background: green;</code></p> <p class="line number21 index20 alt2"><code class="html spaces">            </code><code class="html plain">margin-top: 20%;</code></p> <p class="line number22 index21 alt1"><code class="html spaces">            </code><code class="html plain">margin-left: 20%;</code></p> <p class="line number23 index22 alt2"><code class="html spaces">        </code> <code class="html plain">}</code></p> <p class="line number24 index23 alt1"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">style</code><code class="html plain">></code></p> <p class="line number25 index24 alt2"><code class="html plain"></</code><code class="html keyword">head</code><code class="html plain">></code></p> <p class="line number26 index25 alt1"><code class="html plain"><</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number27 index26 alt2"><code class="html spaces">    </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="father"></code></p> <p class="line number28 index27 alt1"><code class="html spaces">        </code><code class="html plain"><</code><code class="html keyword">p</code> <code class="html plain">class="son"></</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number29 index28 alt2"><code class="html spaces">    </code><code class="html plain"></</code><code class="html keyword">p</code><code class="html plain">></code></p> <p class="line number30 index29 alt1"><code class="html plain"></</code><code class="html keyword">body</code><code class="html plain">></code></p> <p class="line number31 index30 alt2"><code class="html plain"></</code><code class="html keyword">html</code><code class="html plain">></code></p> </td> </tr> </tbody></table> <p> In diesem Beispiel habe ich den Wert für den linken Rand auf 20 %, den Wert für den oberen Rand auf 20 % festgelegt, die Breite des übergeordneten Elements <strong> beträgt 500 Pixel und die Höhe des Das übergeordnete Element ist 300 Pixel groß. </strong>Sehen wir uns den Effekt unten an. </p> <p><img src="https://img.php.cn/upload/article/000/000/007/856d2f11c3d8af9a226d1a5f5414cef7-15.png" alt="" style="max-width:90%" style="max-width:90%"></p> <p>Wie Sie auf dem Bild oben sehen können, ist der margin-top-Wert des untergeordneten Elements <strong> letztendlich relativ zur Breite des übergeordneten Elements und nicht zur Höhe . </strong></p>

Das obige ist der detaillierte Inhalt vonVertiefendes Verständnis des Margin-Attributs in CSS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn