2016-12-08 4 views
0

Я пытаюсь добиться этого3 формат изображения - центр изображения больше и выше г-индекс

Three images arranged with a single center one more prominant and central

Изображение 1 и 3 будет немного скрыта за изображение 2.

У меня есть этот HTML

Простая установка, единственная содержащая div с тремя подвалами, каждая из которых имеет изображение (идентичный собственный размер).

Текущий CSS

.imageBanner { 
     display: flex; 
     align-items: center; 
     width:100%; 
     max-width: 1024px;} 

    .imageLeft img{ 
    max-width: 60%; 
} 

.imageCentre { 
    z-index: 9999; 
    position: relative; 
} 

.imageCentre img{ 
    width: 100%; 
} 

.imageRight img{ 
    max-width: 60%; 
} 

Так что я сделал совмещены изображения вдоль оси х с помощью гибкого трубопровода. Затем я дал центральному изображению абсолютную позицию, чтобы учитывать z-индекс. Однако здесь я сталкиваюсь с проблемой, и изображения не выкладываются, как в приведенном выше примере.

Вот пример, если это помогает

.imageBanner { 
 
    display: flex; 
 
    align-items: center; 
 
    width:100%; 
 
    max-width: 1024px; 
 
} 
 

 
.imageLeft img{ 
 
    max-width: 60%; 
 
} 
 

 
.imageCentre { 
 
    z-index: 9999; 
 
    position: relative; 
 
} 
 

 
.imageCentre img{ 
 
    width: 100%; 
 
} 
 

 
.imageRight img{ 
 
    max-width: 60%; 
 
}
<div class="imageBanner"> 
 
       <div class="imageLeft"> 
 
        <img src="https://unsplash.it/600/400/"> 
 
       </div> 
 
       <div class="imageCentre"> 
 
        <img src="https://unsplash.it/600/400/"> 
 
       </div> 
 
       <div class="imageRight"> 
 
        <img src="https://unsplash.it/600/400/"> 
 
       </div> 
 
</div>

Я чувствую, как я могу быть рядом и будет продолжать пытаться, но любая помощь будет здорово!

Благодаря Те

+0

Я ответил на аналогичный вопрос. Посмотрите http://stackoverflow.com/questions/40875381/stacking-some-images/40875682#40875682. Возможно, это поможет вам – Banzay

ответ

0

Вы думали о чем-то вроде этого:

.imageBanner { 
 
    display: block; 
 
    position: relative; 
 
    margin: 0 auto; 
 
    width:100%; 
 
    max-width: 1024px; 
 
} 
 

 
.imageLeft { 
 
    width: 40%; 
 
    display: block; 
 
    position: absolute; 
 
    left: 0; 
 
    top: 30px; 
 
    z-index: -1; 
 
} 
 

 
.imageCentre { 
 
    width: 60%; 
 
    display: block; 
 
    position: relative; 
 
    z-index: 1; 
 
    margin: 0 auto; 
 
} 
 

 
.imageRight { 
 
    width: 40%; 
 
display: block; 
 
    position: absolute; 
 
    right: 0; 
 
    top: 30px; 
 
    z-index: -1; 
 
} 
 
img { 
 
    width: 100%; 
 
}
<div class="imageBanner"> 
 
      <div class="imageLeft"> 
 
       <img src="https://unsplash.it/600/400/"> 
 
      </div> 
 
      <div class="imageCentre"> 
 
       <img src="https://unsplash.it/600/400/"> 
 
      </div> 
 
      <div class="imageRight"> 
 
       <img src="https://unsplash.it/600/400/"> 
 
      </div> 
 
     </div>

левого отступа левого изображения в можно установить путем изменениями left: атрибута, и отступ справа изменений правого изображения в right:

+0

Это выглядит многообещающим, единственное, что я только что заметил, это то, что если мы пройдем через max-width 1024px, макет, похоже, сломается. В любом случае мы можем остановить его от изменения размера после того, как он достигнет такого размера? – Tomatron

+0

добавили 'position: relative; margin: 0 auto; 'родительскому div. Посмотрите на фрагмент – Banzay

+0

спасибо за то, что вернулись ко мне, мне удалось добраться до этой стадии, и, похоже, он работает сейчас, принял это как ответ. Еще раз спасибо! – Tomatron

0
 .imageBanner { 
     display: flex; 
     align-items: center; 
     width:100%; 
     max-width: 1024px;} 

img { 
    border: 5px solid red; 
    width: 100%; 
    height: auto; 
} 
.imageBanner { 
     display: flex; 
     align-items: center; 
     width:100%; 
     max-width: 1024px;} 

img { 
    border: 5px solid red; 
    width: 100%; 
    height: auto; 
} 

.imageCentre { 
    width: 100%; 
    z-index: 900; 
} 

.imageLeft { 
    position: relative; 
    left: 5%; 
} 

.imageRight { 
    position: relative; 
    right: 5%; 
} 
.imageCentre { 
    width: 100%; 
} 

, как показано на скрипку: https://jsfiddle.net/fce2n85s/1/

+0

Это хорошо выглядит, но, как только размер экрана становится ниже 1020 пикселей, среднее изображение, похоже, уменьшается намного быстрее, чем внешние два изображения. – Tomatron

0

изменить ничего в коде просто добавить CSS в коде CSS. если это работает, ответьте мне!

.imageBanner img { 
    border:solid 5px #000 
} 
.imageLeft { 
    text-align:right; 
    margin-right:-5px 
} 
Смежные вопросы