2017-12-05 25 views
0

私はおそらくここでは本当に簡単なものがありません。私は同じ高さを保持する2つの列を持っているが、divの中にはより多くの内容があるが、背景色は短い列には伸びない。メディアクエリを使用してディスプレイが小さくなると、列は垂直レイアウトに変わります。 左の列の背景色をdivの下まで延長するにはどうすればよいですか?2列の自動高さ背景色

#pageContainer { 
 
     width: 100%; 
 
     text-align: center; 
 
    } 
 
    
 
    #pageContainer p { 
 
     line-height: 10px; 
 
    } 
 
    
 
    .sectionContainer { 
 
     width: 80%; 
 
     margin: 0 auto; 
 
     display: table; 
 
    } 
 
    
 
    .leftColumn { 
 
     display: table-cell; 
 
     float: left; 
 
     width: 50%; 
 
     background-color: #4F4F4F; 
 
     color: #FFFFFF; 
 
    } 
 
    
 
    .rightColumn { 
 
     display: table-cell; 
 
     float: left; 
 
     width: 50%; 
 
     background-color: #EEEEEE; 
 
     color: #000000; 
 
     
 
    } 
 
    
 
    @media all and (max-width: 768px) {  
 
     .sectionContainer { 
 
      width: 100%; 
 
     } 
 
     
 
     .leftColumn { 
 
      width: 100%; 
 
     } 
 
     
 
     .rightColumn { 
 
      width: 100%; 
 
     } 
 
    }
<div id="pageContainer"> 
 
    <div class="sectionContainer"> 
 
    <div class="leftColumn"> 
 
     <h1>Left Column</h1> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
    </div> 
 
    <div class="rightColumn"> 
 
     <h1>Right Column</h1> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
    </div> 
 
    </div> 
 
</div>

私は、問題を表示するCodePenが含まれている:https://codepen.io/Macast/pen/ZaZrNz

感謝を!

答えて

1

高さの問題を修正する(表に意味をなさない)山車を消去します。そして、メディアクエリで、コンテナのblockdisplayを変更し、内側の2つの要素のためのinline-blockへ:このソリューションは、モバイルサイト用のデスクトップサイトの作品ではなく、

#pageContainer { 
 
    width: 100%; 
 
    text-align: center; 
 
} 
 

 
#pageContainer p { 
 
    line-height: 10px; 
 
} 
 

 
.sectionContainer { 
 
    width: 80%; 
 
    margin: 0 auto; 
 
    display: table; 
 
} 
 

 
.leftColumn { 
 
    display: table-cell; 
 
    width: 50%; 
 
    background-color: #4F4F4F; 
 
    color: #FFFFFF; 
 
} 
 

 
.rightColumn { 
 
    display: table-cell; 
 
    width: 50%; 
 
    background-color: #EEEEEE; 
 
    color: #000000; 
 
} 
 

 
@media all and (max-width: 768px) { 
 
    .sectionContainer { 
 
    display: block; 
 
    width: 100%; 
 
    } 
 
    .leftColumn { 
 
    display: inline-block; 
 
    width: 100%; 
 
    } 
 
    .rightColumn { 
 
    display: inline-block; 
 
    width: 100%; 
 
    } 
 
}
<div id="pageContainer"> 
 
    <div class="sectionContainer"> 
 
    <div class="leftColumn"> 
 
     <h1>Left Column</h1> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
    </div> 
 
    <div class="rightColumn"> 
 
     <h1>Right Column</h1> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
    </div> 
 
    </div> 
 
</div>

+0

これは最高の答えです。これにより、ディスプレイがモバイルサイズに縮小されたときに余分な余白が削除されます。優れたありがとう! – Macast

0

display: table;float: left;の代わりにdisplay: flex;を使用できます。それは子供たちが同じ高さになるようにします。

#pageContainer { 
 
     width: 100%; 
 
     text-align: center; 
 
    } 
 
    
 
    #pageContainer p { 
 
     line-height: 10px; 
 
    } 
 
    
 
    .sectionContainer { 
 
     width: 80%; 
 
     margin: 0 auto; 
 
     display: flex; 
 
    } 
 
    
 
    .leftColumn { 
 
     flex-basis: 50%; 
 
     background-color: #4F4F4F; 
 
     color: #FFFFFF; 
 
    } 
 
    
 
    .rightColumn { 
 
     flex-basis: 50%; 
 
     background-color: #EEEEEE; 
 
     color: #000000; 
 
     
 
    } 
 
    
 
    @media all and (max-width: 768px) {  
 
     .sectionContainer { 
 
      width: 100%; 
 
     } 
 
     
 
     .leftColumn { 
 
      width: 100%; 
 
     } 
 
     
 
     .rightColumn { 
 
      width: 100%; 
 
     } 
 
    }
<div id="pageContainer"> 
 
    <div class="sectionContainer"> 
 
    <div class="leftColumn"> 
 
     <h1>Left Column</h1> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
    </div> 
 
    <div class="rightColumn"> 
 
     <h1>Right Column</h1> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
    </div> 
 
    </div> 
 
</div>

+0

。しかし、別の答えが提出されました。ご協力ありがとうございます! – Macast

1

両方sectionContainerleftColumnクラスにheight:100%を追加し、それを修正するようです。

#pageContainer { 
 
     width: 100%; 
 
     text-align: center; 
 
    } 
 
    
 
    #pageContainer p { 
 
     line-height: 10px; 
 
    } 
 
    
 
    .sectionContainer { 
 
     width: 80%; 
 
     margin: 0 auto; 
 
     display: table; 
 
     height:100%; 
 
    } 
 
    
 
    .leftColumn { 
 
     display: table-cell; 
 
     float: left; 
 
     width: 50%; 
 
     background-color: #4F4F4F; 
 
     color: #FFFFFF; 
 
     height:100%; 
 
    } 
 
    
 
    .rightColumn { 
 
     display: table-cell; 
 
     float: left; 
 
     width: 50%; 
 
     background-color: #EEEEEE; 
 
     color: #000000; 
 
     
 
    } 
 
    
 
    @media all and (max-width: 768px) {  
 
     .sectionContainer { 
 
      width: 100%; 
 
     } 
 
     
 
     .leftColumn { 
 
      width: 100%; 
 
     } 
 
     
 
     .rightColumn { 
 
      width: 100%; 
 
     } 
 
    }
<div id="pageContainer"> 
 
    <div class="sectionContainer"> 
 
    <div class="leftColumn"> 
 
     <h1>Left Column</h1> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
     <p>Left Column</p> 
 
    </div> 
 
    <div class="rightColumn"> 
 
     <h1>Right Column</h1> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
     <p>Right Column</p> 
 
    </div> 
 
    </div> 
 
</div>