cari

Rumah  >  Soal Jawab  >  teks badan

Mengapakah gaya atas margin CSS ini tidak berfungsi?

<p>Saya cuba menambah nilai <kod>margin</kod> pada <kod>div</kod> di dalam <kod>div</kod> Semuanya berfungsi dengan baik kecuali nilai tertinggi, yang nampaknya diabaikan. Tapi kenapa? </p> <p><strong>Jangkaan saya:</strong></p><p><br /></p> <p><strong>Apa yang saya dapat:</strong></p><p><br /></p> <p><strong>Kod: </strong></p> <p><br /></p> <pre class="brush:css;toolbar:false;">#outer { lebar: 500px; ketinggian: 200px; latar belakang: #FFCCCC; jidar: 50px auto 0 auto; paparan: blok; } #dalaman { latar belakang: #FFCC33; jidar: 50px 50px 50px 50px; padding: 10px; paparan: blok; }</pre> <pre class="brush:html;toolbar:false;"><div id="outer"> <div id="inner"> Hai dunia! </div> </div></pre> <p><br /></p> <p>W3Schools tidak menjelaskan mengapa ini berlaku dengan <code>margin</code>. </p>
P粉512729862P粉512729862460 hari yang lalu456

membalas semua(2)saya akan balas

  • P粉141035089

    P粉1410350892023-08-24 21:55:31

    Cuba dalamdiv上使用display: inline-block;. Seperti ini:

    #outer {
        width:500px; 
        height:200px; 
        background:#FFCCCC;
        margin:50px auto 0 auto;
        display:block;
    }
    #inner {
        background:#FFCC33;
        margin:50px 50px 50px 50px;
        padding:10px;
        display:inline-block;
    }
    

    balas
    0
  • P粉170438285

    P粉1704382852023-08-24 21:55:02

    Apa yang anda lihat sebenarnya ialah #inner 元素的上边距 折叠#outer元素的上边缘,仅保留#outermargin adalah utuh (walaupun tidak ditunjukkan dalam imej). Tepi atas kedua-dua kotak adalah siram antara satu sama lain kerana jidarnya adalah sama.

    Berikut adalah perkara yang berkaitan daripada spesifikasi W3C:

    Anda boleh melakukan mana-mana perkara berikut untuk mengelakkan margin daripada runtuh:

    Pilihan di atas menghalang margin daripada runtuh kerana:

    Biping kiri dan kanan berkelakuan seperti yang anda jangkakan kerana:

    balas
    0
  • Batalbalas