2012-01-05 3 views
0

Когда я нажимаю 'Click me', появляется всплывающее окно infobox. bg div, который находится за департаментом infobox, должен покрывать 100% страницы, что происходит только при покрытии 100% окна. Как я могу это решить? Вот jsfiddle http://jsfiddle.net/mdanz/wWLVr/2/Div Высота 100% не работает

<html> 
<head> 
<style type="text/css"> 
#infobox { 
position:absolute; width:100px; height:150px; top:100px; left:50%; z-index:2; margin-left:-50px; display:none; border:1px solid black; background-color:#FFFFFF; 
} 
#bg { 
position:absolute; background-color:#000000; opacity:0.4; filter:alpha(opacity=40); top:0; left:0; width:100%; display:none; min-height:100%; z-index:1; 
} 

.displaybox { 
display:block; border:1px solid black; background-color:green; width:200px; height:200px; 
} 
#infobutton { 
border:1px solid black; width:100px; padding:5px; display:block; cursor:pointer; 
} 
</style> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(function() { 
$('#infobutton').click(function() { 

    $('#bg').show(); 
    $('#infobox').show(); 
    $('html, body').animate({ scrollTop: 0 }, 0); 
    }); 
    }); 
</script> 
</head> 
<body> 
<div id='infobutton'>Click Me</div> 
<div id='bg'></div> 
<div id='infobox'></div> 
<div class='displaybox'></div> 
<div class='displaybox'></div> 
<div class='displaybox'></div> 
<div class='displaybox'></div> 
<div class='displaybox'></div> 
<div class='displaybox'></div> 
    </body> 

</html> 
+0

вам нужно мин-ширина: 100% и ширина: 100%. Кроме того, html, тело должно иметь минимальную ширину: 100% и ширину: 100% – Jung3o

+0

Ширина: 100% часть предназначена для поддержки IE. – Jung3o

ответ

1

Вы можете добавить:

$('#bg').css("height", $("body").css("height")); 

непосредственно перед показом этого элемента ...

Вы можете посмотреть на эту скрипку: http://jsfiddle.net/scaillerie/uWeJf/

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