Почему при прокрутке индекс не помогает перекрыть фиксированный блок?
Всем привет!
Подскажите, почему блоки при прокрутке не видно, хотя у них индекс выше?
Как сделать первый блок фиксированным, а остальные идущие вдоль за ним при прокрутке видимыми и перекрывающими его? https://jsfiddle.net/eavdx589/3/
Вся соль в position, при auto свойство z-index наследуется от родительского блока.
transform: translate добавлен только для сдвига вправо, чтобы было видно как блоки проходят над fixed блоком.
Ingernirated, 1. вы ранее не упоминали об этом требовании, но они и так одинаковые по высоте https://jsfiddle.net/pdn5cht3/5/
Вы учитываете, что блок head зафиксирован, и не сдвигается при скролле?
Alex, подскажи ещё пожалуйста, может я что-то не то читал про позиционирование, но почему в данной ситуации только относительно позиционирование реагирует на то, чтобы быть сдвинутым вниз на отступ body и быть корректно отображено?
И почему так вышло, что статическая позиция и индекс не смогли решить мою проблему, а остались всё ровно в тени и меньших размеров?
относительно позиционирование реагирует на то, чтобы быть сдвинутым вниз на отступ body
позиционирование не играт ни какой роли, в данном случае блоки сдвинулись вниз из-за того что мы поставили padding-top 100vh для body, он то и сдвинул весь поток вниз, кроме первого блока, т.к. он вне потока из-за position fixed
статическая позиция и индекс не смогли решить мою проблему
z-index на элементе у которого posirion static - не имеет никакого эффекта, чтобы z-index заработал нужно создать на блоке контекст наложения. контекст налождения у блока создают ряд свойств, среди которых есть свойство position с любым значение кроме static(оно же значение по умолчанию). блок с контекстом всегда будет выше(по оси Z) блока без контекста. именно поэтому ваш первый красный блок перекрыл остальные блоки, т.к. у красного был контекст(position fixed), а у остальных не было. поставив position relative двум последним блокам мы создали им контекст и они перестали перкрываться красным блоком. почему в конкретно этом примере не нужен z-index? потому что блоки с контекстами и без z-index перкрывают друг друга в том порядке в ктором они опредены в разметке. в вашем случае красный блок ниже всех, второй - жеотый, третий - зеленый