Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2013
    Messaggi
    28

    Ottenere altezza di un div in proporzione alla larghezza

    Ciao a tutti,

    Ho un problemino, visto che sono nuovo nel mondo della programmazione e non riesco a risolverlo. Sto facendo un sito web suddiviso in div: un div principale, con all'interno due div figli, uno per il menu e l'altro per il contenuto vero e proprio.

    Ora vorrei che in generale il risultato sia come questo. Il sito l'ho sviluppato io, ma se ci navigate è incompleto e soprattutto non è perfetta la pagina in PHP, sarebbe da rivedere, ma in questo periodo non ho tempo.

    Ad ogni modo vorrei appunto un rettangolino esterno, anche senza immagine quelli sono poi dettagli, e vorrei che però non avesse una larghezza fissa, ma che si adattasse alla pagina. Mi spiego meglio: la larghezza deve essere centrata in modo da avere lo stesso bordo sia a destra che a sinistra, quindi mi serve in percentuale (personalmente ho scelto width: 75%; che stilisticamente parlando mi sembra ottimo) e fin li tutto a posto ci sono riuscito abbastanza bene.

    Il problema è che adesso vorrei ottenere un altezza che sia proporzionata alla larghezza effettiva, che essendo in percentuale mi aspetto che cambi a seconda della risoluzione dello schermo, un rapporto tipo in 16:9 per intenderci. Sapete come fare?

    Ultima cosa, io poi all'interno del contenitore esterno (quello con l'immagine) avrò alti contenitori, ma a quel punto mi basterà dargli un altezza ed una larghezza in percentuale e sarà automaticamente la percentuale riferita al mio contenitore esterno giusto?

    Grazie mille

  2. #2
    Ciao daxter!

    Hmmm... nup 8( CSS non può fare quello che chiedi... ma può farlo javascript 8) Con una funzione tipo:
    codice:
    function resize() {
         dv = document.getElementById("miodiv")
         dv.style.height = dv.offsetWidth / 1.72 +"px"
    }
    te la caverai sicuramente 8)

    Quanto a ciò che succederà poi, con i div interni... chi può saperlo... 8P

    o/ !

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2013
    Messaggi
    28
    E questa funzione la inserisco nel file .html e non in quello css, in modo tale che mi restituisce un valore in altezza del mio div giusto?

    Perché in teoria se ho un div con una dimensione stabilita a priori (in questo caso è stabilita da Javascript, ma l'importante è che non sia in percentuale) poi tutti i div all'interno io gli do un valore in percentuale e le percentuali si riferiscono al div ottenuto in Javascript che se mantiene sempre le stesse proporzioni non dovrebbe darmi problemi!

    Cioè secondo te ho detto una fesseria o posso seguire questo ragionamento? Abbi pazienza, ma la mia esperienza sull'argomento è ancora bassa!

    Grazie della risposta comunque!

  4. #4
    Ciao! Si, esatto, la metti nel file html o in un file .js esterno, non nel css. Ricorda di "farla partire" con una cosa tipo:
    codice:
    <body onResize="resize()" onLoad="resize()">
    Ai div interni prova a dare una altezza con il css, anche in %, ma non è detto che funzioni... al massimo anche ai div interni dai una regola js tipo:
    codice:
    function resize() {
         dv = document.getElementById("altro_miodiv")
         dv.style.height = dv.offsetWidth * 3 +"px"
    }
    ...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.