#html #css
#HTML #css
Вопрос:
Я хочу разместить два divs рядом, чтобы веб-страница была адаптивной. Я реализовал это, используя два divs, похожих на bootstraps col-md-6. но должен быть более простой способ, используя class = btn. приветствуется любое решение.
HTML:
<div class="cont">
<div class="btn blue"></div>
</div>
<div class="cont">
<div class="btn red"></div>
</div>
CSS:
.cont{
display:inline-block;
width:50%;
height:100px;
background:#eee;
padding:10px 5px;
box-sizing:border-box;
}
.btn{
width:100px;
height:80px;
}
.red{
background:red;
float:left;
}
.blue{
background:blue;
float:right;
}
Комментарии:
1. Какова ваша реальная цель? Ваш сайт адаптивный. Как вы хотите, чтобы это вело себя?
2. «Способ разместить два элемента в одном div вот так» — например, что?
3. @desperado я хочу, чтобы два div.btn были расположены по центру и рядом, поэтому пришлось использовать два divs.cont, но я хочу поместить оба div.btn в один div.cont, и они должны вести себя так же, как сейчас
4. для меня это выглядит как «приемлемое» решение. На практике вложенность div довольно распространена и часто необходима. Проверьте решение ниже.
Ответ №1:
Взгляните на display: flex
, например, на http://css-tricks.com/snippets/css/a-guide-to-flexbox /
Я думаю, это именно то, что вы ищете.
Комментарии:
1. Насколько хорошо поддерживается Flexbox?
2. Что ж. Кажется, только вчера мы все надеялись, что это будет принято. Поддержка IE (по-видимому, не менее 11) может оказаться невозможной, но рад, что она была принята.
3. В IE 10 используйте ms-flex … Да, flexbox очень хорош, очень полезен
Ответ №2:
Попробуйте это:
.cont{
margin: 0 auto; // added
display:inline-block;
width:50%;
height:100px;
background:#eee;
padding:10px 5px;
box-sizing:border-box;
}
Другой пример:
<div class="wrapper" style="margin: 0 auto; width: 200px">
<div class="inner1" style="width: 100px; float:left;"></div>
<div class="inner2" style="width: 100px; margin-left: 100px"></div>
</div>
Ответ №3:
Так это то, что вы имеете в виду?
HTML
<div class="cont">
<div class="btn blue"></div>
<div class="btn red"></div>
</div>
CSS
.cont{
margin: 0 auto; // added from desparado
width:50%;
height:100px;
background:#eee;
padding:10px 5px;
box-sizing:border-box;
}
.btn{
width:100px;
height:80px;
}
.red{
background:red;
float:left;
}
.blue{
background:blue;
float:right;
}
Вы можете заменить margin auto на inline-block и поиграть с этим, поместив в дополнительный контейнер.
Поскольку вы задаете определенную ширину своим кнопкам — задавая ширину вашему контейнеру и используя ширину поля, установленную на auto, я полагаю, вы получите то, что ищете.