Fabio Donatantonio

Resta connesso

Software Developer / Adjunct Professor

Div al centro della finestra del browser

Può risultare molto utile posizionare un div o un blocco al centro della pagina web. Pensiamo ad esempio all’esigenza di creare un piccolo sito web che si vada a posizionare al centro della finestra del browser.
La soluzione proposta raggiunge questo scopo innanzitutto fissando in pixel la dimensione del nostro div e con l’aiuto di poche linee di codice javascript e css posizionandolo al centro verticalmente e orizzontalmente.

Ecco il codice completo (nel nostro esempio il div ha dimensione 400 x 400):

<html>
<head>
<title>DIV al centro della pagina</title>
<style type="text/css">
<!--
.blocco{
	background-color:#00FFFF;
	height:400px;
	width:400px;
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}
-->
</style>
</head>
<body>
<script type="text/javascript">
// Calcolo l'altezza in pixel della finestra del browser
var h;
if( typeof( window.innerHeight ) == 'number' ) {
    // Non - Internet Explorer
    h = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    // Per Internet Explorer 6
    h = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    // Per altri Internet Explorer
    h = document.body.clientHeight;
  }
// Calcolo il margine superiore per posizionare il div
if(h>400){
     h=(h-400)/2;
}else{
     // Per evitare un errore di divisione per 0
     h=0;
}
// Creo quindi il DIV
document.write("<div style='margin-top:"+h+"px;' class='blocco'>");
</script>
Div al centro della pagina!<br/>
Qui posso aggiungere i contenuti al DIV...
</div>
</body>
</html>

Analizzando brevemente il codice proposto si può notare come il CSS svolga essenzialmente il ruolo di allineamento del div orizzontalmente, successivamente Javascript calcolando l’altezza della finestra del browser (window.innerHeight), posiziona il div al centro verticalmente, impostando un margine superiore al div.

N.B. Questa soluzione non è da considerarsi l’unica per raggiungere l’obiettivo di centrare un div.

Fabio Donatantonio

Fabio Donatantonio. Analista e sviluppatore full-stack di applicazioni web in linguaggio PHP. Professore a Contratto per le cattedre di Fondamenti di Informatica e Archivistica Digitale presso Università degli Studi eCampus. Dal 2008 curatore del sito www.donatantonio.net, da sempre appassionato di programmazione, mare, sigari e... musica.

1 Comment

  1. Div al centro che segue lo scrolling | Fabio Donatantonio

    18th Lug 2011 - 23:50

    […] un articolo di un pò di tempo fa, si è visto come centrare con CSS/Javascript un div al centro della pagina. […]

Leave a reply

Your email address will not be published. Required fields are marked *

 

Didattica

Università degli Studi eCampus
Data Evento
09/02/2021
14:30
Esame Archivistica Digitale e Informatica per le Scienze Umane - Cds Letteratura, Lingua e Cultura Italiana - Lettere
09/02/2021
14:30
Esame Introduzione all'Archivistica Digitale e all'Informatica per le Scienze Umane - Cds Letteratura, Arte, Musica e Spettacolo - Lettere
09/02/2021
17:30
Esame Abilità Informatiche e Telematiche - Cds Design e Discipline della Moda - Lettere
09/02/2021
17:30
Esame Abilità Informatiche e Telematiche - Cds Letteratura, Arte, Musica e Spettacolo - Lettere
Risorse
Guida HTML/CSS per principianti (link)
Introduzione agli ipertesti (link)
Esercizi guidati in Java (link)
Intelligenza artificiale (link)
Libri
Fondamenti di Informatica (2011) (link)
Informatica per le Scienze Umane (2011) (link)
Fondamenti di Informatica (2014) (link)
Pagina Docente
uniecampus.it - Scheda Docente (link)
Contatti
fabio.donatantonio[at]uniecampus.it

JWhisper, sviluppato presso il Dipartimento di Informatica Applicata dell'Università degli Studi di Salerno:

Stay Connected

Twitter

Le mie foto

Foto di Fabio Donatantonio
×