I am currently working on a project where I have a div named "background" containing 4 images (400x300px) that fade in and out in a row every x seconds. The issue I am facing is that these images are displaying on the top-left of the browser, and I am trying to move them within a container without success. I have tried changing the position to "relative" and using the "margin" property, but the fadeIn-Out image remains stuck at the top-left corner. Below is the code snippet. Any suggestions on how to resolve this?
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Image Change</title>
<style type="text/css">
div.background {
position:relative;
width:500px;
height:500px;
margin-left:50px;
margin-top:50px;
background:red;
z-index:-1;}
div.background img {
position:fixed;
list-style: none;
left:0px;
top:0px;}
div.background ul li.show {
z-index:500}
div.background { position:absolute; left:0px; top:0px; z-index:-1;}div.background img { position:fixed; list-style: none; left:0px; top:0px;}div.background ul li.show { z-index:500}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript></br>function thebackground() {
$('div.background img').css({opacity: 0.0});
$('div.background img:first').css({opacity: 1.0});
setInterval('change()',4000);
}
function change() {
var current = ($('div.background img.show')? $('div.background img.show') : $('div.background img:first'));
if ( current.length == 0 ) current = $('div.background img:first');
var next = ((current.next().length) ? ((current.next().hasClass('show')) ? $('div.background img:first') :current.next()) : $('div.background img:first'));
next.css({opacity: 0.0})
.addClass('show')
.animate({opacity: 1.0}, 1000);
current.animate({opacity: 0.0}, 1000)
.removeClass('show');
};
$(document).ready(function() {
thebackground();
$('div.background').fadeIn(1000); // works for all the browsers other than IE
$('div.background img').fadeIn(1000); // IE tweak
});
</script>
</head>
<body>
<div class="background">
<img src="images/image1.jpg" />
<img src="images/image2.jpg" />
<img src="images/image3.jpg" />
<img src="images/image4.jpg" />
</div>
</body>
</html>