2010-09-14 3 views
7

Мне интересно, можете ли вы помочь мне разместить два divs, mainContent и sideContent рядом друг с другом?Элементы позиционирования CSS Рядом друг с другом

HTML:

<div id='main'> 
    <div id='mainContent'> 
    </div> 
    <div id='sideContent'> 
    </div> 
</div> 

CSS: #

#main { width: 100%; min-height: 400px; 
    background: #0A3D79; /* for non-css3 browsers */ 
    background: -webkit-gradient(linear, left top, left bottom, from(rgb(20,114,199)), to(rgb(11,61,122))); /* for webkit browsers */ 
    background: -moz-linear-gradient(top, rgb(20,114,199), rgb(11,61,122));} /* for firefox 3.6+ */ 
    /*gradient code from http://www.webdesignerwall.com/tutorials/cross-browser-css-gradient*/ 

    #mainContent { width: 75%; margin-top: 20px; padding-bottom: 10px; min-height: 400px; background-color: blue; } 
    #sideContent { width: 22%; margin-top: 20px; padding-bottom: 10px; min-height: 400px; background-color: red; border-style: solid; border-left-width: 3px; border-left-color: white;border-right-width:0px;border-top-width:0px;border-bottom-width:0px;} 

Я включил все CSS, потому что я не был уверен, что именно будет иметь влияние на такого рода вещи. Кроме того, я пробовал делать sideContent и mainContent, но они просто исчезают. Любая идея почему?

ответ

10

Если вы хотите, чтобы они отображались бок о бок, почему sideContent ребенок mainContent? сделайте их братьями и сестрами, затем используйте:

float:left; display:inline; width: 49%; 

на обоих из них.

#mainContent, #sideContent {float:left; display:inline; width: 49%;} 
+0

Моя ошибка, в моем Фактическая реализация - это братья и сестры. Я просмотрел и отредактировал исходный пост, в ближайшее время попытаюсь выполнить вашу реализацию. Благодаря! – djs22

+0

не беспокойтесь! :) – sheeks06

+0

Работал отлично, но по какой-то причине я больше не наследую фон. Спасибо за помощь! Я ухожу, чтобы изучить эту проблему ... любой совет будет замечательным! – djs22

0

Если вы не знаете, сколько элементов будет использоваться, или хотите, чтобы они имели нормальную ширину, единственным способом является использование таблицы:

<div id='main'> <table> <tbody> 
    <tr> 
    <td><div id='mainContent'></div></td> 
    <td><div id='sideContent'></div></td> 
    </tr> 
</tbody> </table> </div> 
+0

Элемент '

' никогда не нужен для компоновки. Правила компоновки таблиц могут применяться к любому элементу с использованием 'display: table-cell' и' display: table-row'. Существует также Flexbox ('display: flex') и CSS Grid Positioning (' display: grid'). – Dai

Смежные вопросы