2012-04-01 2 views
0

Взгляните на этот screenshoot первый:Скрытие изображения под DIV

enter image description here

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

Вот оранжевый стиль фона и сам белая коробка:

Оранжевый фон:

body { 
    margin: 0; 
    padding: 0; 
    background: url("../img/back.png") repeat-x top #fff; 
    text-align: left; 
    color: #8a5225; 
} 

Белая коробка:

#box { 
    background: url("../img/box.png") no-repeat; 
    width: 163px; 
    height: 41px; 
    float: right; 
    position: relative; 
} 

Надеется, что вы дать мне какое-то решения для этого. Я пытался с помощью z-index, но это не приносит никаких результатов ...

+0

Можете ли вы установить [скрипку] (http://jsfiddle.net)? – PeeHaa

+0

Оранжевый фон 'back.png', который прикреплен к' body'? Если так, это не сработает. Вы должны применить это к элементу, отличному от тела, чтобы получить что-то под ним. – steveax

+0

Вот скрипка: http://jsfiddle.net/5bsty/2/, я хочу, чтобы 'второй div' был на фоне оранжевого, но как он может быть ниже' третьего div'. – Cyclone

ответ

3

Вы не будете быть в состоянии сделать это на основе вашей текущей структуры html. Z-индекс работает только для позиционированных элементов. т.е. relative, absolute или fixed. Вы не сможете применить их к элементу body. Вы можете попробовать, но я попробовал, и это не сработало. Вместо этого поставьте оранжевый фон в другой div и поднимите нижний под ним.

http://jsfiddle.net/5bsty/

<div class="one">First div</div> 
<div class="two">Second div</div>​ 

div.one { 
    background: #c74d12; 
    z-index: 3; 
    position: relative; 
} 

div.two { 
    position: relative; 
    top: -10px; 
    z-index: 1; 
    background: white; 
} 
+0

Фон для всей страницы, поэтому ваша структура html, заданная в скрипке, неверна, моя структура выглядит так: http://jsfiddle.net/5bsty/2/, но все же я хочу, чтобы вторая div', который будет помещен под 'first div', но не под' третьим div'. – Cyclone

+1

@Cyclone - Наверное, я не понял в своем ответе. Вы не можете этого сделать. Как я могу быть ребенком под его родителем? – mrtsherman

+0

+1.Спасибо, но разве нет решений для этого? Я просто хочу, чтобы белая коробка была надвинута на мышку поверх оранжевого фона ... – Cyclone

0

использовать z-index и вы должны сделать .. дать оранжевый фон более высокий Z-индекс

0

Я думаю, вы посмотрите, как этот

Берут два DIV и родительский DIV определяет позицию по отношению и ребенка DIV определяют абсолютные свойства и г-индекс является обязательным.

CSS

div.one { 
    background: #c74d12; 
    position: relative; 
    z-index:2; 
} 

div.two { 
    position: absolute; 
    top:11px; 
    background: green; 
    left:0; 
    right:0; 
    z-index:1; 
} 
​ 

Html

<div class="one">First div</div> 
<div class="two">Second div</div>​ 

Проверьте жить демо http://jsfiddle.net/rohitazad/5bsty/3/

-2
+0

Друг - это очень сложно использовать z-index: Надейтесь, что это лучшее решение; Не записывайте код в подробном виде. –

+0

Привет, при отправке ответов предпочтительнее не только ссылаться на сторонний источник, но и давать некоторые объяснения. Кроме того, куча людей на SO ненавидит 'w3schools' и downvote, как только они видят ссылку оттуда. Раздражает да. Просто совет, чтобы избежать downvotes! – mrtsherman

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