2015-01-31 2 views
1

Я хочу разместить два изображения в одной строке и добавить между ними 10px. Поскольку макет реагирует, строка должна разбиваться на мобильный экран, а изображения должны идти один над другим.Лучший способ размещения изображений в строке

Образец layout

Я использую только два изображения без дополнительного кода, это работает, но, безусловно, должно быть лучше, более надежный способ, с помощью Div контейнеров, а также позволяет добавлять совместив к изображениям (нужно вертикальное выравнивание : средний). Что лучше CSS для достижения этого, особенно для этого макета?

+0

ли у вас всегда есть два изображения, или вы ищете более общее решение для 3 или более изображений? Есть ли максимальная ширина изображений? Прошу прокомментировать, спасибо! –

+0

Максимальное количество изображений будет 1 или 2 изображения. Если использовать одно изображение, тогда ширина обычно не более 500 пикселей, если два изображения, общая ширина не более 700 пикселей. – minto

ответ

1

Возможно, это может вам помочь. Поместите изображения внутри div с шириной 50%. Чтобы добавить прописку, вы можете использовать размер окна: border-box;

<div class="row"> 
     <div class="left "> 
      <img src="http://www.codewithsonia.com/stuff/img/vader.jpg" /> 
     </div> 
     <div class="right ">  
      <img src="http://www.codewithsonia.com/stuff/img/vader.jpg" /> 
     </div> 
</div> 

Сделайте изображения отзывчивым, установив максимальную ширину до 100%

img { 
    max-width: 100%;  
} 

.left{ 
    width:50%; 
    float: left; 
    position: relative; 
    border-right:5px solid green; 
    -webkit-box-sizing: border-box; 
     -moz-box-sizing: border-box; 
      box-sizing: border-box;  

} 

.right{ 
    width:50%; 
    padding-right: 0px; 
    float: right; 
    border-left:5px solid red; 
    -webkit-box-sizing: border-box; 
    -moz-box-sizing: border-box; 
      box-sizing: border-box; 

} 

.row:after {  
     clear: both; 
    } 

@media screen and (max-width: 300px) { 
    .right { 
    width:100%; 
    border-left:0; 
    clear:right; 
    }  
    .left{ 
    width:100%; 
    border-right:0; 
    clear:right; 
    } 
} 

Вы можете увидеть скрипку здесь http://jsfiddle.net/f4bt5Lq0/1/

+0

Могу ли я плавать: оставил оба divs? Кроме того, можно использовать отступы или разметку для интервалов, или для этого требуется установить свойства размера рамки для обоих изображений? – minto

+0

1) Да, вы можете поплавать ими и влево.2). Вы должны использовать границу, потому что размер поля или дополнения будет добавлен в widht div, увеличив его на 50%. Однако, если вы хотите использовать отступы или поля, есть другой подход, вы можете использовать другой подход: установите максимальный размер для строки (скажем, max-size: 1000px). Затем добавьте пробел в левое и правое divs 5px для каждого и установите значение с чем-то около 49.3% -49.5% http://jsfiddle.net/5h1t4o6u/2/ – Sonia

+0

Одной из проблем с использованием границ является то, что нам нужно установить это цвет для цвета фона тела, чтобы поддерживать целостность дизайна. – minto

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