Newsgroup: it.comp.lang.javascript
Titolo: sito forma quadrata

Mi hanno chiesto di fare un sito con la forma quadrata di cirrna 20x20 cm e 
quindi vi chiedo se mi potete fornire qualche indicazione (anche un css) che 
faccia il caso mio.
grazie
Beppe 

 indicazione (anche un css) che faccia il caso mio.
Sono solo un dilettante... :-) ma prova a vedere questo:
<html>
<head>
<title>Squared</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
div#main {
  padding: .05em .8em;
  overflow: auto;
  border: solid silver 1px;
  text-align: left;
  }
p { line-height: 10em; }
</style>
</head>
<body>
<center>
<SCRIPT type=text/javascript><!-- 
hw = screen.availHeight/100*70;   /* = 70% dell'altezza dello schermo */
document.write('<div id=\"main\" style=\"width:'+hw+'px; height:'+hw+'px;\">');
//--></SCRIPT>
0<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p>
</div>
</center>
</body>
</html>
-- 
Saluti
Renato
 


In un sito internet non ha senso parlare di cm...... perchè non è un foglio 
di carta, e in secondo luogo anche parlare di un sito "quadrato" è troppo 
relativo; perché a determinate risoluzioni dello schermo... quel quadrato 
non diventerà magari un triangolo, ma non avrà difficoltà a diventare un 
rettangolo.
Cooper.
 


se utilizza le dimensioni in pixel invece che relative (em o %) sarà
sempre un quadrato..
poi verranno fuori dei bei casini quando il contenuto è maggiore, ma è
un altro discorso...

 diventare un rettangolo.
In effetti ciò è falso :)
prima di tutto, in un sito web ha senso parlare di cm (anche se in modo
molto limitato): nessuno ha mai detto che un sito web sia fruibile solo su
monitor (hai presente il tasto stampa? :))
Inoltre, anche nel caso del monitor, il sistema operativo sa qual è il DPI
dello schermo; con questa informazione è facile "convertire" i cm in pixel
(si tratterà di fare un paio di moltiplicazioni) e i maggiori browser
supportano i cm come unità di misura.
In ogni caso un quadrato non può diventare rettangolo :)
L'unico modo per fare questo è che il sistema operativo sia così male
informato sull'hardware dove gira da ritenere di avere un monitor con un
rapporto baseXaltezza diverso da quello effettivo (cosa alquanto
improbabile). Più ragionevolmente, c'è il rischio che il sistema operativo,
magari per questioni di ottimizzazione, non utilizzi il "vero" dpi del
monitor, quanto un valore leggermente diverso (96 al posto di 98.5),
mostrando quindi un sito quadrato, ma leggermente più o meno grande.
Tutto questo posto che comunque è una richiesta quantomeno "peculiare"
quella di esprimere le dimensioni di un sito web in cm.
Vabe', comunque via css non è particolarmente difficile ottenere qualcosa di
ragionevole:
<html><head><title>Squar`ed</title>
<style type="text/css">
div#body {
  overflow: auto; margin: auto;
  width: 20cm; height: 20cm;
  background: silver; border: 1px solid black;
}
</style></head>
<body><div id="body">
   <p>Hello world</p>
   <p>Hello world</p>
   <p>Hello world</p>
   <p>Hello world</p>
   <p>Hello world</p>
<div></body></html>
-- 
By ZeD


Hehe, sarà sempre un quadrato si.. ma se vai a modificare la risoluzione 
dello schermo con qualcuna non standard.... l'effetto ottico prodotto... :) 


Al di la di tutto questo, è opportuno condurre la discussione su 
it.professioni.lavoro.webmaster questo è il posto meno indicato visto che si 
parla di Javascript.
 

 sarà sempre un quadrato..
Infatti, nell'esempio che ho postato, la dimensione del tag DIV 
(entro cui costruire le pagine del sito) è dimensionato in pixel, 
il cui valore è determinato dall'altezza dello schermo, in modo 
da rientrare nella finestra del browser.  :-)
-- 
Saluti
Renato
 

 ha scritto nel messaggio 
news:0901191921$r...@host.domain.tld...

Mi dispiace deluderti, ma tu non puoi sapere qual'è altezza dello schermo 
che andrà ad utilizzare il tuo visitatore. Certamente puoi rilevarla usando 
javascript (che ottieni comunque una altezza in pixel)... ma questo non ti 
risolve il problema perchè in tal caso ti trovi nelle condizioni di doverti 
generare dinamicamente il css prima di caricare la pagina web.
L'unica soluzione è fare il sito in modo classico per lo schermo e adattare 
il contenuto sulla carta con un css a parte (statico). Se poi vuoi gettarti 
una zappa ai piedi fai pure, nessuno te lo vieta.
Ma non parlare di accessibilità, usabilità e affini.
Cooper.
 

 (punti per pollici) che è tipico della stampante (il punto).
http://www.google.it/search?q=monitor+dpi
è vero, la D sta per dot ma la sigla è usata (impropriamente, certo, ma per
estensione) per rappresentare la "densità di pixel" di un monitor.
Dopotutto il suo significato è lo stesso, ad un livello più alto.
-- 
By ZeD

 ha scritto nel messaggio 
news:7Ofdl.248850$FR.5...@twister1.libero.it...
<stracut>
In tutta sincerità m'abbutto stare dietro ad una re-invenzione 
dell'informatica.
Ti do un consiglio più generale: fai come ritiieni piu opportuno, e poi 
cambia le risoluzioni dello schermo.... e cosi dalla teoria passiamo alla 
pratica..
Magari ti convinci meglio.
Cooper.