Отображение 1 текстового поля и 3 изображений в одной строке

0

Интересно, могу ли я отображать 1 текстовое поле и 3 изображения в одной строке? Все изображения одного размера. Если возможно, и мне бы идеально понравился какой-то текст под каждым изображением?

heres код:

      <div class="row">
    <div class="side-bar">
        <h3> Recent Work </h3>
        <p>Here some of my latest work, covering web design, branding and identity.</p>
        <a href="#">View the Portfolio &rarr;</a>
    </div>

<div class="recent-wrap">
    <a href="#"><img src="img/body-metrix.png"></a>
    <a href="#"><img src="img/body-metrix-logo.png"></a>
    <a href="#"><img src="img/market.png"></a>
</div>
</div>



.row {
    display: inline;
    float: left;
}
.side-bar {

    padding: 10px;
    background-color: #f3f3f3;
    height: 200px;
    width: 250px;
}

.side-bar h3 {
    font-weight: bold;
    font-size: 19px;
    margin-bottom: 5px;
}

.side-bar p {
    font-size: 14px;

}

.side-bar a {
    font-size: 13px;
}


.recent-wrap img {
max-width: 225px;
min-height: 125px;
border-style: solid;
border-width: 1px;
border-color: #000000;
margin-right: 20px;
margin-bottom: 20px;
}

Я искал в Интернете, но пока не везет. заранее спасибо.

  • 0
    У вас есть какие-то особые требования к браузеру, такие как IE7 или что-то еще?
  • 0
    Я полагаю, вы ищете display:inline-block или float: left
Теги:
row

5 ответов

7

Существует несколько способов сделать это, один пример - поместить два дочерних элемента:

.side-bar, .recent-wrap {
    float: left;
}

Это будет работать только в том случае, если для родительского элемента достаточно места для .side-bar .recent-wrap и .recent-wrap чтобы сидеть рядом друг с другом.

Пример: http://jsbin.com/poxox/1/edit

  • 0
    Я всегда всегда предпочитаю отображение: inline-block вместо float, но оба работают.
  • 0
    Это работает, спасибо. Еще одна вещь, как я могу добавить текст под каждым изображением?
Показать ещё 6 комментариев
0

Вот пример с текстовыми полями ниже изображения: пример

0

Попробуй это:

 .side-bar {
     padding: 10px;
     background-color: #f3f3f3;
     height: 200px;
     width: 250px;
     float: left;       /* added */
 }

 .recent-wrap {
     margin-left: 270px;        /* added (padding + width) of side-bar */
 }

Рабочий скрипт

Этот подход позволяет второму контейнеру оставаться в очереди с первым контейнером, даже если размер окна мал.

  • 0
    Сначала я предложил с display: table-cell который совсем не годится, потому что элементы теряют контроль над высотой.
0

CSS:

.row {
   width: 250px
}

http://jsfiddle.net/3DCSd/

0

Вот рабочая скрипка

.row {
    display: inline-block; /* changed to inline-block, you don't need
                              inline and float */       
}   

.recent-wrap a {   /*changed to a , since your images are wrapped in <a> */
max-width: 225px;
min-height: 125px;
border-style: solid;
border-width: 1px;
border-color: #000000;
margin-right: 20px;
margin-bottom: 20px;
}

Остальная часть CSS осталась прежней

и HTML Я просто добавил текстовое поле

<div class="row">
   <div class="side-bar">
       <h3> Recent Work </h3>
       <p>Here some of my latest work, covering web design, branding and identity.</p>
       <a href="#">View the Portfolio &rarr;</a>
   </div>

   <div class="recent-wrap">
     <input type="text" id="ss" />
     <a href="#"><img src="img/body-metrix.png"/></a>
     <a href="#"><img src="img/body-metrix-logo.png"/></a>
     <a href="#"><img src="img/market.png"/></a>
   </div>
</div>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню