2016-12-19 11 views
1

左のdivはパーセントの幅で左に浮動小数点が残り、左の浮動小数点は残りのスペースを占めたいと考えています。ここでは[フィドル]:https://jsfiddle.net/gfhfku8k/です。ご協力ありがとうございます。左のdivパーセントの幅、右の残りのスペースを埋める

HTML:
<div class="container"> 
    <div class="left"> 

    </div> 
    <div class="right"> 

    </div> 
</div> 
CSS:
html, body { 
    height: 100%; 
    width: 100%; 
    margin: 0; 
    padding: 0; 
    box-sizing: border-box; 
} 
.container { 
    width: 100%; 
    height: 100%; 
    border: 1px solid #000; 
} 
.left { 
    width: 30%; 
    height: 100%; 
    float: left; 
    border: 1px solid #000; 
    overflow: hidden; 
} 
.right { 
    height: 100%; 
    /* width: 30px; */ 
    overflow: hidden; 
    float: left; 
    border: 1px solid #f00; 
} 
+0

何も見ずに、右のdivに70%の幅を使ってみましたか?もちろん、ボックスサイズを設定する必要があります:border-box – smnbbrv

+0

.right divを残りの全幅にしますか? – Vishnu

+0

はい、私は残りのスペースを占めるために右のdivを望みますが、左のdivの幅は幅を変更します。 30%は単なる例です。ごめんなさい。 – halfacreyum

答えて

4

右の列にwidth: 70%を置くと仮定すると、レイアウトのこの種のが最も簡単flexで達成され、あなたが探しているものではありません。しくみはこうだ:私は列にfloatプロパティを削除し、すべての要素(*)(それは、このデモのために必要ではないですが)、それが正しく動作するためにbox-sizing: border-boxを追加

注意。

html, 
 
body { 
 
    height: 100%; 
 
    width: 100%; 
 
    margin: 0; 
 
} 
 
* { 
 
    box-sizing: border-box; 
 
} 
 
.container { 
 
    width: 100%; 
 
    height: 100%; 
 
    border: 1px solid #000; 
 
    /* flex */ 
 
    display: flex; 
 
} 
 
.left, 
 
.right { 
 
    border: 1px solid #000; 
 
    overflow: hidden; 
 
} 
 
.left { 
 
    background: pink; 
 
    width: 30%; 
 
} 
 
.right { 
 
    background: blue; 
 
    /* flex */ 
 
    flex-grow: 1; 
 
}
<div class="container"> 
 

 
    <div class="left"> 
 
    </div> 
 

 
    <div class="right"> 
 
    </div> 
 

 
</div>

+1

お返事ありがとうございます。以前はフレックスを使用していませんでしたが、間違いなくそれについて学習しなければなりません。 – halfacreyum

0

あなたはこの

.right { 
    height: 100%; 
    overflow: hidden; 
    border: 1px solid #f00; 
} 

だけ削除floatを試すことができます。.RIGHTクラスから左。

関連する問題