Bug 134944 Page footer displays in wrong place when preview in Web Viewer.
Description: Page footer displays in wrong place when preview in html. Steps to reproduce: 1. New sample source and dataset from customers. 2. Drag dataset to layout. 3. Insert content to master page footer. 4. Preview in web viewer Expected result: Page footer displays at the end of the report. Actual result: Page footer displayed in the middle of the report and overlapped with report body content.
engine/org.eclipse.birt.report.engine.emitter.html/src/org/eclipse/birt/report/engine/emitter/html/HTMLReportEmitter.java
turn
	 *
	public String handleStyleImage( String uri )
	{
		String id = null;
		 FileUtil.isLocalResource( uri ) && FileUtil.isRelativePath( uri ) )
		{
			File path = null;
			String base = (String) runnable
					.getProperty( IReportRunnable.BASE_PROP );
			 base != null && !"".equals( base ) ) 
			{
				path = new File( base, uri );
			}
			else
			{
				String reportName = runnable.getReportName( );
				 reportName != null )
				{
					String parent = new File( new File( reportName )
							.getAbsolutePath( ) ).getParent( );
					path = new File( parent, uri );
				}
				else
				{
					 TO FIXME
				}
			}
			 path == null || !path.exists( ) )
			{
				logger
						.log(
								Level.SEVERE,
								"file {0} not found", path == null ? null : path.getAbsoluteFile( ) ); 
				return null;
			}
			id = path.getAbsolutePath( );
		}
		else
		{
			id = uri;
		}
		Image image = new Image( id );
		image.setReportRunnable( runnable );
		image.setRenderOption( renderOption );
		String imgUri = null;
		 imageHandler != null )
		{
			switch ( image.getSource( ) )
			{
				case IImage.URL_IMAGE :
					imgUri = imageHandler.onURLImage( image, renderContext );
					break;
				case IImage.FILE_IMAGE :
					imgUri = imageHandler.onFileImage( image, renderContext );
					break;
				case IImage.INVALID_IMAGE :
					break;
				default :
					assert ( false );
			}
			 imgUri = imgUri.replace( File.separatorChar, '' );
		}
		return imgUri;
	}
	**
	 * Handles the style of the styled element content
	 * 
	 * @param element
	 *            the styled element content
	 * @param styleBuffer
	 *            the StringBuffer instance
	 *
	protected void handleStyle( IContent element, StringBuffer styleBuffer,
			boolean bContainer )
	{
		IStyle style;
		 isEmbeddable )
		{
			style = element.getStyle( );
		}
		else
		{
			style = element.getInlineStyle( );
		}
		AttributeBuilder.buildStyle( styleBuffer, style, this, bContainer );
		 element instanceof ITextContent )
		{
			AttributeBuilde