2017-04-07 13 views
1

ブラウザのサイズを小さくすると、カラムが機能せず、各イメージが異なる行に表示されるという問題があります。それは、ここに示されています:サイズ変更時にブートストラップカラムが機能しない

enter image description here

をそれは、行の4枚の画像を表示大きいサイズで正しく動作しません。誰かがこれに対する修正を知っていますか?

<div class="container"> 
    <div class="container-fluid"> 
    <div class="row"> 
     <div class="col-sm-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
     <div class="col-sm-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
     <div class="col-sm-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
     <div class="col-sm-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
    </div> 
    </div> 
</div> 
+1

これは、 'col-sm-3'を使うときの動作です。' col-xs-3'を試してみてください。 – hungerstar

+0

これにより、画像は同じ行に留まっていましたが、画像はお互いに重なっています。 – user3461866

+0

設定ディメンションを使用しています。 'img-responsive'クラスを使用して、' height'と 'width'属性を削除してください。 – hungerstar

答えて

1

まず、2つの容器を使用しないでください。第二に:

<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/> 
 
<div class="container-fluid"> 
 
    <div class="row"> 
 
     <div class="col-sm-3"> 
 
     <a href="#"><img src="https://www.w3schools.com/bootstrap/sanfran.jpg" alt="Smiley face" height="267" width="187"></a> 
 
     </div> 
 
     <div class="col-sm-3"> 
 
     <a href="#"><img src="https://www.w3schools.com/bootstrap/sanfran.jpg" alt="Smiley face" height="267" width="187"></a> 
 
     </div> 
 
     <div class="col-sm-3"> 
 
     <a href="#"><img src="https://www.w3schools.com/bootstrap/sanfran.jpg" alt="Smiley face" height="267" width="187"></a> 
 
     </div> 
 
     <div class="col-sm-3"> 
 
     <a href="#"><img src="https://www.w3schools.com/bootstrap/sanfran.jpg" alt="Smiley face" height="267" width="187"></a> 
 
     </div> 
 
    </div> 
 
    </div>

予想通りcol-sm-*のみ767px上に適用されているので、これは動作します。小さな画面にはcol-xs-*を使用してください。

+0

@hungerstarそれは良いアドバイスです。 '.row'と' .col'のネストが深く、 '.container'が行と列のネストの深いところで使われている状況を考えてみましょう。同じことを示唆しているブートストラップ・ドッグのリファレンスを見てみましょう。 – user31782

+0

ここで@hungerstar http://getbootstrap.com/css/#overview-type-links _Containers_セクションの2行目:_ "パディングなどのために、どちらのコンテナもネスト可能ではありません。" – user31782

0

col-sm-(タブレット表示用)モバイルビューの場合はcol-xs-です。

<div class="container-fluid"> 
    <div class="row"> 
     <div class=" col-sm-3 col-xs-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
     <div class=" col-sm-3 col-xs-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
     <div class=" col-sm-3 col-xs-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
     <div class=" col-sm-3 col-xs-3"> 
     <a href="#"><img src="smiley.gif" alt="Smiley face" height="267" width="187"></a> 
     </div> 
    </div> 
    </div> 
+0

ブートストラップで2つのコンテナを使用しないでください – user31782

+0

@ user31782フルスクリーンになるバックグラウンドが中央になるようにしたいのですが? – Morpheus

+0

@hungerstar私は '.container'と' .container-fluid'について話しています。 – user31782

0

imgタグからwidth = "187"とheight = "267"を削除してください。この代わりに、style = "max-width:187 px; width:100%;" imgタグ付き。私はそれがうまくいくと思います。してみてください。 モバイルデバイスでは、1つの行に4つのイメージを表示するには、 "col-x3-3"クラスを "col-sm3"で追加する必要があります。

+0

イメージに固定幅を追加しました。あなたの問題の理由は、4つのイメージを格納するためのスペースがないということです。 1つの画像の幅が187pxであると考えてください。したがって、4つの画像には748ピクセルが必要です。幅が748px未満のデバイスにはスペースがありません。だからあなたは小さなデバイスで画像のサイズを変更する必要があります –

+0

だから私の答えを試してください –

関連する問題