IE6 и IE7 z-index (не абсолютный) проблема - PullRequest
0 голосов
/ 13 сентября 2010

Этот код в настоящее время работает для всех современных браузеров вместо IE6 / IE7.Любой совет?Я не могу абсолютно позиционировать ничего из этого: все это должно быть адаптировано к контенту.Опять же, я считаю, что это прекрасно работает в современных браузерах.

http://www.webdevout.net/test?02h&raw

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
  <head>
    <title>Test</title>
    <style type="text/css">
    body { padding: 0; margin: 0; }
    #first { background: blue; padding: 0px 25px 25px 25px; margin-bottom: -10px; position; relative; z-index: 7; }
    #second { background: #DDD; border: 1px dashed gray; height: 200px;  position: relative; z-index: 8; display: block; }
    #precedence { float: right; height: 40px; width: 40px; background-color: #f09; z-index: 9; position: relative; }
    </style>
  </head>
  <body>
    <div id="first">
      <div id="precedence"></div>
    </div>
    <div id="second"></div>
  </body>
</html>
  • Опять же, это не может использовать абсолютное позиционирование.

Ответы [ 2 ]

0 голосов
/ 18 декабря 2010

так ссылка, которую вы разместили, не имеет к этому никакого отношения?Великолепное объяснение после факта.

Ваши проблемы ie6 / 7 проистекают из проблем с полями / отступами, а также из-за конфликтов позиционирования, о которых вы заявляете, на что указал Крис Джей.вы упомянули абсолютное позиционирование, которое упустил Крис, однако его решение жизнеспособно, вы либо сбили его, потому что оно нарушило ваше правило, либо потому, что вы не видели его ценность.Коробка с логотипом Криса является гибкой, чтобы приспособить изменение размера логотипа, просто ее положение не изменится.наконец .... почему вы устанавливаете второй div для отображения: блок?это его по умолчанию.

это так просто, чувак

<! DOCTYPE html PUBLIC "- // W3C // DTD HTML 4.01 // EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang =" en "> Test

0 голосов
/ 13 сентября 2010

Ваш вопрос не совсем понятен, но я думаю, что вы пытаетесь сделать что-то подобное?измените свой CSS на:

body {
padding: 0; margin: 0; }
#first {
background: blue;
padding: 0px 25px 25px 25px;
margin-bottom: -10px;
z-index: 7;
}
#second {
position: relative;
background: #DDD;
border: 1px dashed gray;
height: 200px; 
z-index: 8;
display: block;
}
#precedence {
height: 40px;
width: 40px;
background-color: #f09;
z-index: 9;
position: absolute;
left: 100%;
margin:0 0 0 -65px;
}

делает то же самое, что и у вас, но также работает в ie6 / 7

да, там есть абсолютно позиционированный элемент.Я знаю, что вы указали не абсолютное значение, но посмотрите, как это работает, поскольку я думаю, что это то, что вы хотите.

Кроме того, в вашем CSS есть ошибка в #first свойствах

position; relative;

position: relative;

но этот div в любом случае не нужно позиционировать

...