Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    7

    Problema Allineamento Orizontale

    Salve a tutti.
    Ho un problema con l'allienamento orizzontale di alcuni Div. Ecco gli stili:

    codice:
    .contenitore_risp{
    	vertical-align: middle;
    	text-align: center;
    	position:relative;
    	float:left;
    	clear:both;
    	padding:0.2%;
    	margin:0 auto;
    	border:1px solid grey;
    	height:61%;
    	width:99.5%;
    }
    
    .contenitore_risp_sing_iniziale{
    	display: table-cell;
            vertical-align: middle;
            text-align: center;
    	clear:left;
    	position:relative;
    	float:left;
    	height:92.5%;
    	margin:0 auto;
    	padding:1%;
    	border:1px solid red;
    }
    
    .contenitore_risp_sing_centrale{
    	display: table-cell;
            vertical-align: middle;
            text-align: center;
    	clear:none;
    	position:relative;
    	float:left;
    	height:92.5%;
    	margin:0 auto;
    	padding:1%;
    	border:1px solid red;
    }
    .contenitore_risp_sing_nascosto{
    	display: none;
    	
    }
    
    .contenitore_risp_sing_finale{
    display: table-cell;	
    margin:auto;
    	clear:rigth;
    	position:relative;
    	float:left;
    	height:92.5%;
    	margin:0 auto;
    	padding:1%;
    	border:1px solid red;
    }
    Come si intuisce, ho un Div contenitore_risp , e da 2 a 5 contenitori_risp_sing all'interno + 1 contenitore nascosto sempre presente. Il primo con con classe contenitore_risp_sing_iniziale, i centrali con classe contenitore_risp_sing_centrale, e l'ultimo con contenitore_risp_sing_finale.

    La larghezza dei div interni è stabilita in javascript, in base al loro numero, ed è sempre uguale x tutti. Ogni Div contenitore_risp contiene almeno 1 div nascosto, e 2 div contenitori_risp_sing interni. Tutto viene creato dinamicamente tramite Dom.
    Volevo capire come mai, essendoci del margine residuo ( x calcolare la larghezza faccio Math.floor(89%/num_cont_int)), non riesco a centrare i div Interni.
    Grazie mille

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    7
    nessuno può darmi una mano??

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    7
    Possibile che proprio nessuno riesce a darmi una mano?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Anzitutto non hai postato il codice HTML, per cui e` difficile seguire il discorso.

    Poi il tuo CSS potrebbe semplificarsi molto, usando i selettori in modo furbo (e questo aiuterebbe molto la comprensione).
    Prova a mettere tutte le caratteristiche comuni in un selettore del tipo:
    .contenitore_risp div { ... }
    e lasciando solo i margini nei selettori delle classi

    Ultimo punto:
    dici che setti la larghezza tramite JS: e` una pratica un po' pericolosa, sia perche` il JS potrebbe non essere abilitato nel browser e sia perche` l'effetto potrebbe essere che la pagina viene caricata male e poi corretta.
    La soluzione ad ambedue i problemi e` di far definire la larghezza dal CMS (o comunque dal programma lato server, che ci deve essere per forza data che i blocchi sono definiti dinamicamente).

    Non capisco inoltre perche` hai usato l'attributo vertical-align nel contenitore: non e` una tabella, quindi tale attributo non ha effetto. Potresti usarlo in associazione con il display:table, pero` non tutti i browser lo interpretano correttamente.
    Credo che per allineare in verticale, devi usare i posizionamenti assoluti (con tutti i problemi che questo comporta)
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.