Як змусити div з’являтися внизу, а не поруч з іншим?


75

Я хотів би розмістити свій div під списком, але насправді він розміщений поруч зі списком. Список генерується динамічно, тому він не має фіксованої висоти. Я хотів би, щоб div карти знаходився праворуч, а ліворуч (поруч із картою) список розміщувався зверху, а другий div під списком (але все-таки праворуч від карти)

#map { float:left; width:700px; height:500px; }
#list { float:left; width:200px; background:#eee; list-style:none; padding:0; }
#similar { float:left; width:200px; background:#000; } 
<div id="map">Lorem Ipsum</div>        
<ul id="list"><li>Dolor</li></li>Sit</li><li>Amet</li></ul>
<div id ="similar">
    this text should be below, not next to ul.
</div>

Будь-які ідеї?

Відповіді:


41

Я думаю, що для того, що ви хочете, потрібен додатковий обгортковий div.

#map {
    float: left; 
    width: 700px; 
    height: 500px;
}
#wrapper {
    float: left;
    width: 200px;
}
#list {
    background: #eee;
    list-style: none; 
    padding: 0; 
}
#similar {
    background: #000; 
}
<div id="map">Lorem Ipsum</div>        
<div id="wrapper">
  <ul id="list"><li>Dolor</li><li>Sit</li><li>Amet</li></ul>
  <div id ="similar">
    this text should be below, not next to ul.
  </div>
</div>


70

використовувати ясно: ліворуч; або ясно: як у вашому css.

#map { float:left; width:700px; height:500px; }
 #list { float:left; width:200px; background:#eee; list-style:none; padding:0; }
 #similar { float:left; width:200px; background:#000; clear:both; } 


<div id="map"></div>        
<ul id="list"></ul>
<div id ="similar">
 this text should be below, not next to ul.
</div>

Я мав на увазі, що це повинно бути нижче списку, а не карти. Я хотів би мати його праворуч від карти, але під списком.
Vonder


7

Поплавок #listі #similarправо і додати clear: right;до#similar

Подобається так:

#map { float:left; width:700px; height:500px; }
#list { float:right; width:200px; background:#eee; list-style:none; padding:0; }
#similar { float:right; width:200px; background:#000; clear:right; } 


<div id="map"></div>        
<ul id="list"></ul>
<div id="similar">this text should be below, not next to ul.</div>

Вам може знадобитися обгортка (div) навколо всіх, хоча це однакова ширина лівого та правого елемента.


1

що ви також можете зробити, я розміщу додатковий "фіктивний" div перед вашим останнім div.

Зробіть його висотою 1 піксель і шириною, настільки необхідною, щоб покрити контейнер div / body

Це зробить останній div під ним, починаючи зліва.


0
#map {
  float: right;
  width: 700px;
  height: 500px;
}
#list {
  float:left;
  width:200px;
  background: #eee;
  list-style: none;
  padding: 0;
}
#similar {
  float: left;
  clear: left;
  width: 200px;
  background: #000;
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.