Относительные div-ы покрывают фиксированный div с более высоким z-индексом

0

Привет, У меня есть следующий код HTML

<body>
    <div class="relative1"> 
        <div class="fixed1"> </div> 
    </div>
    <div class="relative2"> </div> 
</body>

и CSS

.relative1 {
  left: 0px;
  top: 0px;
  width: 100px; 
  height: 100px;
  background-color: red; 
  position: relative; 
  z-index: 1; 
}

.fixed1 {
  width: 100px; 
  height: 100px;
  left: 20px;
  top: 20px;
  background-color: green; 
  position: fixed; 
  z-index: 2; 
}

.relative2 {
  width: 100px; 
  height: 100px;
  left: 30px;
  top: -80px;
  background-color: blue; 
  position: relative; 
  z-index: 1; 
}

Пример: FIDDLE

Вы можете видеть, что div.relative2 охватывает мой div.fixed1 чего я не хочу. Мне нужно покрыть все своим div.fixed1. Есть ли способ сделать это без изменения css для .relative1 и .relative2 css?

  • 0
    все же ваш вопрос не ясен ... пожалуйста, будьте более конкретны
Теги:

2 ответа

2
Лучший ответ

Не вставляйте фиксированный div в относительный div:

http://jsfiddle.net/WGcRe/1/

<body>
    <div class="relative1"> 
    </div>
    <div class="fixed1"> </div>     
    <div class="relative2"> </div> 
</body>

Фиксированные элементы не связаны с относительно позиционированными элементами; они прилипают к экрану.
Следовательно, я не вижу причины их гнездовать.

  • 0
    Что если я не смогу сделать это?
  • 0
    Почему бы тебе?
Показать ещё 3 комментария
0

задавать

.relative2{
z-index: -1;
}
  • 0
    Я не должен менять стили для .relative1 и .relative1
  • 0
    Хорошо, так что вы можете использовать ответ Кима - вмешательство в структуру не в CSS

Ещё вопросы

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