Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1

    [pillolina] Swf centrati W3C HTML 4.01compatibili [ no javascript ]

    Mi sembra sia capitato molto spesso di doverci trovare in situazioni dove il nostro swf dovrebbe stare al centro della pagina, ecco perche' m'e' venuto in mente di mostrare come si potrebbe fare per centrare in vari modi il nostro file.

    Uno sguardo all' HTML usato
    intanto e' importante capire come andrebbe scritto l' HTML W3C compatibile per posizionare dove vogliamo il nostro swf.

    La cosa importante e' 'giocare' con una sola tabella , cosi' da crearci lo spazio che ci interessa, sia questo esattamente al centro, in modo orizzontale, sia in modo verticale.

    Ricordate che per l'allineamento verticale abbiamo a nostra disposizione il tag <tr> e che per quello orizzontale il tag <td> , rispettivamente con il valign per il tr ed il solo align per il td.

    esempio per swf centrato verticalmente e orizzontalmente
    codice:
    <table style="width: 100%; height: 100%;">
    	<tr>
    		<td align="center">
    			<object .... >
    		</td>
    	</tr>
    </table>
    tutto qua', se abbiamo impostato i css per il body e l' html ( poi vedremo come ) abbiamo gia' un swf esattamente al centro della pagina.

    Non e' necessario, in questo caso, usare il valign perche' la tabella centrera' in automatico, verticalmente , l' swf in questione.

    con valign="top" l' swf sarebbe centrato solo orizzontalmente e starebbe in cima alla pagina, senza align="center" starebbe a sinistra con align="right" a destra.

    Abbastanza semplice dedurre che valign="top" ed align="left" potrebe tornarci utile qualora avessimo necessita' di mostrare un swf a dimensioni in percentuale quali width="100%" ed height="100%", cosi' da avere una pagina html interamente in flash.

    esempio per swf centrato verticalmente e con larghezza in percentuale
    se dovessimo centrare solo verticalmente l' swf potremmo semplicemente scrivere cosi'
    codice:
    <table style="width: 100%; height: 100%;">
    	<tr>
    		<td>
    			<object width="100%" height="300".... >
    		</td>
    	</tr>
    </table>

    esempio per swf centrato orizzontalmente e con altezza in percentuale
    codice:
    <table style="width: 100%; height: 100%;">
    	<tr valign="top">
    		<td align="center">
    			<object width="300" height="100%".... >
    		</td>
    	</tr>
    </table>
    insomma nell' insieme mi sembra sia abbastanza semplice capire come muoversi.


    esempio di pagina validata W3C
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    	<title>SWF centrato verticalmente HTML 4.01 Transitional</title>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    	<meta name="robots" content="ALL">
    	<style type="text/css">
    		html, body {
    			margin: 0px;
    			padding: 0px;
    			width: 100%;
    			height: 100%;
    		}
    		table {
    			width: 100%;
    			height: 100%;
    		}
    	</style>
    </head>
    <body>
    	<table cellspacing="0" cellpadding="0">
    		<tr>
    			<td>
    				<object type="application/x-shockwave-flash" data="centered.swf" width="100%" height="300">
    				<param name="movie" value="centered.swf" />
    				</object>
    			</td>
    		</tr>
    	</table>
    </body>
    </html>
    in questo caso il file centered.swf risultara' si largo 100% ma avra' in questo esempio un movieClip sempre centrato, provate voi stessi , questo e' il codice usato per questo esempio:
    centered.swf
    codice:
    // STAGE PROPRIETIES
    	Stage.scaleMode = "noScale";
    	Stage.align = "TL";
    
    // BLOCK TIMELINE
    	stop();
    
    // MAIN MOVIE DEFINITIONS
    	var ms_width:Number = new Number( 400 );
    	var ms_height:Number = new Number( 170 );
    	var ms_brdColor:Number = 0xDEDEDE;
    	var ms_bgColor:Number = 0xF5F5F5;
    
    // MAIN MOVIE CREATION
    	createEmptyMovieClip( 'myStage', getNextHighestDepth() );
    	with( myStage ) {
    		moveTo( 0, 0 );
    		lineStyle( 1, ms_brdColor, 100 );
    		beginFill( ms_bgColor, 100 );
    		lineTo( ms_width, 0 );
    		lineTo( ms_width, ms_height );
    		lineTo( 0, ms_height );
    		lineTo( 0, 0 );
    		endFill();
    	}
    
    // FUNCTION TO CENTER MOVIE
    	var centerToStage:Function = function( mc:MovieClip ):Void {
    		mc._x = Math.floor( ( Stage.width / 2 ) - ( mc._width / 2 ) );
    		mc._y = Math.floor( ( Stage.height / 2 ) - ( mc._height / 2 ) );
    	}
    	myStage.centerInterval = setInterval( centerToStage, 50, myStage );
    
    // TEXFIELD CREATION WITH TEXTFORMAT DECLARATION
    	myStage.createTextField( 'myTfield', myStage.getNextHighestDepth(), 10, 10, myStage._width, 0 );
    	myStage.myTfield.autoSize = true;
    	myStage.myTfield.multiline = true;
    	myStage.myTformat = new TextFormat();
    	myStage.myTformat.font = "_sans";
    	myStage.myTformat.size = 11;
    	myStage.myTformat.color = 0x006666;
    
    // FUNCTION TO WRITE ON TEXTFIELD
    	var showStageInfo:Function = function( myTfield:TextField, myTformat:TextFormat ):Void {
    		myTfield.text = "Stage width: " + Stage.width + "\nStage height: " + Stage.height;
    		myTfield.setTextFormat( myTformat );
    	}
    	myStage.showStageInterval = setInterval( showStageInfo, 50, myStage.myTfield, myStage.myTformat );
    Il risultato potete vederlo on-line in questa pagina.

    Da notare la funzione che per centrare il movieClip fa riferimento, ovviamente, allo Stage.width/2 ed allo Stage.height/2


    Spero sia utile a qualcuno
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  2. #2
    Ehmm... tutto molto bello, per carità, ma php che c'entra ?
    Addio Aldo, amico mio... [03/12/70 - 16/08/03]

  3. #3
    scusate, sono troppo assonnato, potreste spostare in ActionScript ?

    scusate ancora ... troppo

    ( al solito ho cambiato la select per AS, non me l'ha presa ed ho premuto su nuovo lostesso ... )
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  4. #4
    Lè Lù.. lè lù
    ottima pilloletta!
    finalmente vedo il code AS del filmato

    Ottimo andr3 grazie!
    Interactive Html/CSS/JS Playground | @webbeloz ( cip..cip! )
    Mechanics & Expert Tuning Fix Z3 Roadster Community

  5. #5
    bella pillola fagiano assonnato

    regalami un oggi da favola...e il domani bhe!?non mi importa se tu 6 con me! ©Ily

  6. #6

  7. #7

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    fantastico,sei sempre er mejo

    ok, questa pillolina mi ha fatto venire voglia di approfondire l'HTML 4.01....però c'è una cosa: "EMBED"....

    da quanto mi risulta (ma potrei sbagliarmi) firefox è stato creato sulla base del buono che ha Netscape, ma il tag <embed> non esisteva proprio per far vedere gli "oggetti" tipo gli swf su Netscape???so anche che l'embed non è un tag valido per il W3C, dov'è il mistero??? il tag <embed> non serve più???

  9. #9
    Originariamente inviato da and80
    fantastico,sei sempre er mejo

    ok, questa pillolina mi ha fatto venire voglia di approfondire l'HTML 4.01....però c'è una cosa: "EMBED"....

    da quanto mi risulta (ma potrei sbagliarmi) firefox è stato creato sulla base del buono che ha Netscape, ma il tag <embed> non esisteva proprio per far vedere gli "oggetti" tipo gli swf su Netscape???so anche che l'embed non è un tag valido per il W3C, dov'è il mistero??? il tag <embed> non serve più???
    ... e' una 'lunga' storia


    discussione sul forum XHTML e CSS:
    http://forum.html.it/forum/showthrea...hreadid=715636


    perche' funziona su tutti i browser ( o quasi ):
    http://www.alistapart.com/articles/flashsatay/

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    dimenticavo



    Originariamente inviato da and80
    ok, questa pillolina mi ha fatto venire voglia di approfondire l'HTML 4.01
    meglio approfondire anche ( o solo ) XHTML
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.