2017-02-09 7 views
0

CSS gurus、別の多分疑問の質問に戻ってきます。私はお互いの隣に2つの部門を持っています。私は、次の2つの条件を満たすようにしたい:divの幅を100%にすると、その隣のdivがページの下にプッシュされます

  1. ページの両方のための十分なスペースがある、彼らは50%の幅を持っているし、同じ行にする必要があります。
  2. 十分なスペースがない場合、それらは100%幅で、お互いの上にある必要があります。ここで

はJSFiddleです:https://jsfiddle.net/kwg1upu0/5/

HTML:

<div class="container"> 
<div class="divOne"></div> 
<div class="divTwo"></div> 
</div> 

CSS:

.container { 
    width: 100%; 
} 

.divOne { 
    width: 50%; 
    min-width: 300px; 
    height: 100px; 
    background-color: yellow; 
    float: left; 
} 

.divTwo { 
    width: 50%; 
    min-width: 300px; 
    height: 100px; 
    background-color: blue; 
    float: left; 
} 

EDIT:は確かにメディアクエリは、私はマーク正解です。メディアクエリはページの読み込みにのみ適用されるため、ウィンドウのサイズを変更すると動的に変更されることはありません。私の場合、私はそれが必要なので、私はAngularと$ window.innerWidthでプログラム的に行う必要があります。

+1

十分なスペースとはどういう意味ですか?幅または高さ? –

+0

申し訳ありませんが、私は幅を参考にしていました。 – Neekoy

+1

これを確認してください:https://jsfiddle.net/k6o2jpk7/ –

答えて

1

メディアクエリを使用できます。

.container { 
 
    width: 100%; 
 
} 
 

 
.divOne { 
 
    width: 50%; 
 
    height: 100px; 
 
    background-color: yellow; 
 
    float: left; 
 
} 
 

 
.divTwo { 
 
    width: 50%; 
 
    height: 100px; 
 
    background-color: blue; 
 
    float: left; 
 
} 
 

 
@media (max-width: 600px) { 
 
    .divOne, .divTwo { 
 
    width: 100% !important; 
 
    } 
 
}
<div class="container"> 
 
<div class="divOne"></div> 
 
<div class="divTwo"></div> 
 
</div>

+0

ブリリアント!ちょうど昨日私がメディアの質問について読んだ面白いことは、それらを持っている必要があります。お返事ありがとうございました:) – Neekoy

+0

あなたは答えとしてマークすることができますので、みんなが直接それを見ています:-) – DomeTune

+0

それは4分以上私を許可しません、クールダウンがすぐに正しい答えとしてマークされますoff :) – Neekoy

1

私はこれを適切に行うための唯一の方法は、メディアクエリであると思います。 はフィドルを参照してください: https://jsfiddle.net/kwg1upu0/6/

@media screen and (max-width:600px) { 
    .divOne, .divTwo { 
    width:100%; 
    } 
} 

ページの幅が600PX以下になると、その後、100%の幅に変更します。

関連する問題