<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
	<head>
		<meta http-equiv="Content-type" content="text/html; charset=utf-8">
		<title>absolute</title>
		<style type="text/css" media="screen">
			body { margin: 1px; padding: 5px; }
			div.absolute { position: absolute; margin: 1px; border: 2px solid #000; padding: 5px; width: 100px; height: 100px; background: #fff; }
			#absolute-1 { top: 0; left: 0; }
				#absolute-1-1 { top: 1px; left: 1px; }
					#absolute-1-1-1 { top: 1px; left: 1px; }
			#absolute-2 { top: 19px; left: 19px; }
			#marker { position: absolute; border: 2px solid #000; width: 50px; height: 50px; background: #ccc; }
			p.instructions { position: absolute; bottom: 0; }
			#positionTest { position: absolute; }
		</style>
		<script src="../../jquery.js"></script>
		<script src="../iframeTest.js"></script>
		<script type="text/javascript" charset="utf-8">
			jQuery( function( $ ) {
				$( ".absolute" ).on( "click", function() {
					$( "#marker" ).css( $( this ).offset() );
					var pos = $( this ).position();
					$( this ).css( { top: pos.top, left: pos.left } );
					return false;
				} );
				startIframeTest();
			} );
		</script>
	</head>
	<body>
		<div id="absolute-1" class="absolute">absolute-1
			<div id="absolute-1-1" class="absolute">absolute-1-1
				<div id="absolute-1-1-1" class="absolute">absolute-1-1-1</div>
			</div>
		</div>
		<div id="absolute-2" class="absolute">absolute-2</div>
		<div id="positionTest">Has absolute position but no values set for the location ('auto').</div>
		<div id="marker"></div>
		<p class="instructions">Click the white box to move the marker to it. Clicking the box also changes the position to absolute (if not already) and sets the position according to the position method.</p>
	</body>
</html>
