2017-05-08 6 views
1

私は複数のdivを保持しています(約20個)。各行に3つのdivを配置したいので、このようなものに見えるようにします(divを流し続けます)。コンテナ内に3列ありますが、

これらの列を何らかの親divに置かずに中央に揃えるには、どのような方法が最適ですか?私はそれぞれ3列を持っているが、使用しているシステムではできないdivを使用すると、私はそれらを中心に置くことができます。何か案は?

enter image description here

+0

あなたは何を試してみましたか?いくつかのコードを共有できますか? – tech2017

+1

*「複数のdivを保持するコンテナがあり、約20インチ」*は「これらの列を何らかの親divの中に置かずにこれらの列を中央に置くのに最適な方法は何ですか?」*。 "コンテナ"は親であり、このようなボックスを中央に置くための技術をたくさん使うことができます。作業しているコードを投稿してください。 –

+0

ブートストラップを使用していますか? –

答えて

1

簡単な例は次のようになります。

あなたが行制御するには、このいずれかを使用することができ、純粋なCSS:動的幅を取得するためにwidth: calc((100% - 60px)/3);

.child:nth-child(3n+1) { 
    clear: both; 
} 

を。

.child { 
 
    background: white; 
 
    height: 40vh; 
 
    float: left; 
 
    margin: 0px 10px 10px 0px; 
 
    width: calc((100% - 60px)/3); 
 
    border: 5px solid black; 
 
} 
 

 
.child:nth-child(3n+1) { 
 
    clear: both; 
 
} 
 

 
.wrapper { 
 
    background: white; 
 
    border: 5px solid black; 
 
    display: inline-block; 
 
    width: calc(100% - 30px); 
 
    margin: 10px; 
 
    padding: 10px 0px 0px 10px; 
 
}
<div class="wrapper"> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
    <div class="child"></div> 
 
</div>

0

'最良' の方法は、IMOフレキシボックスを使用することです。あなたは親のdivなしと言うが、親のコンテナのdivのいくつかの種類を持っている必要があります。

* { 
 
\t box-sizing: border-box; 
 
} 
 

 
.container { 
 
\t display: flex; 
 
\t flex-wrap: wrap; 
 
\t justify-content: space-between; 
 
\t max-width: 400px; 
 
\t margin: 0 auto; 
 
\t padding: 25px; 
 
\t border: 2px solid black; 
 
} 
 

 
.box { 
 
\t display: block; 
 
\t height: 160px; 
 
\t width: 100px; 
 
\t margin-bottom: 25px; 
 
\t border: 2px solid black; 
 
}
<div class="container"> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
\t <div class="box"></div> 
 
</div>

関連する問題