2015-08-17 2 views
1
<div class="main"> 
    <div class="test" style="width:40px;height:100px"><div> 
    <div class="test" style="width:20px;height:150px;"><div> 
    <div class="test" style="width:40px;height:100px;"><div> 
    <div class="test" style="width:40px;height:100px;"><div> 
</div> 

.main{ 
    position:relative; 
    border:1px solid red; 
    width:140px; 
    height:400px; 
} 
.test{ 
    float:left; 
    border:1px solid silver; 
    position:relative; 
    padding:10px; 
    display:inline-block; 
} 

Div и его высота и ширина идут динамически. Я пытаюсь установить ширину div в макете .2 в пересчете на raw. Пожалуйста, предложите.Автоматический подгонка динамического блока div

+0

Вы пытались использовать некоторую сетку? Например, Bootstrap или какая-нибудь более легкая версия – suvroc

+0

yes Я использую bootstrap – Prashobh

+0

Вы можете попробовать использовать масонство для такого макета. –

ответ

1

height контейнера div должен быть auto. Таким образом, это займет оптимальное пространство, чтобы соответствовать внутренним элементам.

.main { 
    ... 
    height: auto; 
} 

Demo

.main { 
 
    border: 1px solid red; 
 
    width: 140px; 
 
    height: auto; 
 
    overflow: hidden; 
 
} 
 
.test { 
 
    float: left; 
 
    border: 1px solid silver; 
 
    position: relative; 
 
    padding: 10px; 
 
    display: inline-block; 
 
}
<div class="main"> 
 
    <div class="test" style="width:40px;height:100px"></div> 
 
    <div class="test" style="width:20px;height:150px;"></div> 
 
    <div class="test" style="width:40px;height:100px;"></div> 
 
    <div class="test" style="width:40px;height:100px;"></div> 
 
</div>

+0

спасибо, но все еще есть пустые места, последний ряд div должен соответствовать – Prashobh

+0

@prash Можете ли вы изменить высоту 'main' div? – Tushar

+0

да я могу изменить – Prashobh

0

Если вы уже используете Bootstrap вы можете использовать свои классы, чтобы сделать 2 штук в ряд

https://jsfiddle.net/3mdrrjf8/1/

<div class="main row"> 
    <div class="test col-md-8 col-xs-6" style="height:100px"></div> 
    <div class="test col-md-8 col-xs-6" style="height:150px;"></div> 
    <div class="test col-md-8 col-xs-6" style="height:100px;"></div> 
    <div class="test col-md-8 col-xs-6" style="height:100px;"></div> 
</div>