Как расположить два элемента бок о бок, используя CSS

Я хочу расположить абзац справа от <iframe> карты Google.

Я не знаю, как показать свой код, так что вот скриншот того, что я хочу:

Ответы

Ответ 1

Просто используйте стиль float. Поместите свою карту iframe google в div-класс и в абзац другого класса div, затем примените следующие стили CSS к этим классам div (не забудьте очистить блоки после эффекта float, чтобы не создавать проблемы с блоками ниже):

CSS

.google_map{
    width:55%;
    margin-right:2%;
    float: left;
}
.google_map iframe{
   width:100%;
}
.paragraph {
    width:42%;
    float: left;
}
.clearfix{
    clear:both
}

HTML

<div class="google_map">
      <iframe></iframe>
</div>
<div class="paragraph">
      <p></p>
</div>
<div class="clearfix"></div>

Ответ 2

У вас есть два варианта float:left или display:inline-block.

Оба метода имеют свои оговорки. Похоже, что display:inline-block чаще встречается в наши дни, поскольку он позволяет избежать некоторых проблем с плавающей точкой.

Прочтите эту статью http://designshack.net/articles/css/whats-the-deal-with-display-inline-block/ или эту http://www.vanseodesign.com/css/inline-blocks/ для более подробно обсуждение.

Ответ 3

Ни одно из этих решений не работает, если вы увеличиваете количество текста, чтобы оно было больше ширины родительского контейнера, а элемент справа все же перемещается ниже одного влево, а не остается рядом с ним. Чтобы исправить это, вы можете применить этот стиль к левому элементу:

position: absolute;
width: 50px;

И примените этот стиль к правильному элементу:

margin-left: 50px;

Просто убедитесь, что край слева для правого элемента больше или равен ширине левого элемента. Никаких плавающих или других атрибутов не требуется. Я бы предложил обернуть эти элементы в div со стилем:

display: inline-block;

Применение этого стиля может не потребоваться в зависимости от окружающих элементов

Сценарий: http://jsfiddle.net/2b0bqqse/

Вы можете видеть, что текст справа выше, чем элемент слева, очерченный черным. Если вы удалите абсолютное позиционирование и маржу и вместо этого используйте float, как предложили другие, текст справа будет опускаться ниже элемента влево

Скрипт: http://jsfiddle.net/qrx78u20/

Ответ 4

Для вашего iframe дайте внешний div с display:inline-block style display:inline-block, И для вашего абзаца div также display:inline-block

HTML

<div class="side">
    <iframe></iframe>
</div>
<div class="side">
    <p></p>
</div>

CSS

.side {
   display:inline-block;
}

Ответ 6

Используйте либо плавающие, либо встроенные элементы:

Пример JSBIN

HTML:

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
  <div>float example</div>
  <div><div style="float:left">Floating left content</div><div>Some content</div></div>
  <div>inline block example</div>
  <div><div style="display:inline-block">Some content</div><div style="display:inline-block">Next content</div></div>
</body>
</html>

Ответ 7

Вы можете использовать float:left для выравнивания div в одной строке.

скрипка

Ответ 8

Вы можете float элементы (оболочка карты и абзац) или использовать inline-block для обоих из них.

Ответ 9

Поместите iframe внутри <p> и сделайте iframe css

float:left; display:inline-block

Ответ 10

Оберните iframe в классе, оставив его.

Затем абзац должен быть вытеснен и направо, пока есть место для него. Затем установите ваш абзац для отображения: inline-block и добавьте левый край, чтобы его убрать.

<div class="left">
<img src="http://lorempixel.com/300/300" /> <!--placeholder for iframe-->
</div>
<p>Lorem Paragraph Text</p>


.left { float: left; }
p { display: inline-block; margin-left: 30px;  }

Здесь скрипка: http://jsfiddle.net/4DACH/

Ответ 11

дайте своим ящикам класс foo (или что-то еще) и добавьте css

.foo{
    float: left;
}