Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Adattare larghezza elementi-pagina

    Ciao a tutti; ho una pagina web che consiste in 2 tab, affiancati, fatti con jquery ui. Il primo tab ha una dimesione statica, specifica in pixel, mentre il secondo deve essere dinamico, nel senso che deve allargarsi occupando tutto il resto dello spazio indipendentemente dal monitor. Per l'altezza ho risolto con window.screen.height...anche per la larghezza avevo risolto così, solo che poi ho visto che basta aprire la pagina con la finestra del browser anche solo leggermente ristretta,e il secondo tab(che prende i pixel della risoluzione del monitor) finisce sotto il primo tab. Allora ho provato con window.innneeWidth, che effetivamente prende la larghezza della finestra browser..però ovviamente prende la larghezza della finestra nel momento in cui il sito viene caricato..quindi se poi l'utente allarga/stringe la finestra browser, il tab rimane piccolo/troppo grande..so che esiste la possibiltà di usare la percentuale per la larghezza con css,che si adatta dinamicamente..il problema è che la larghezza del secondo tab a me serviva per dare la larghezza anche agli elementi contenuti del tab, per i quali NON si può dare la larghezza in percentuale...

    Potrebbe essere una soluzione valida fare in modo che l'intera pagina web possa essere "scrollata" anche lateralmente, in modo che quando il browser è aperto a tutto schermo si veda giusta, e se l'utente rimpicciolisce la finesta, tutti gli elementi della pagina web rimangono inalterati e compare lo scroll laterale nel browser? sapete indicarmi come fare?

  2. #2
    Scusate ho fatto una descrizione un pò lunga e contorta, la in pochr parole,la domada è: COME FARE PER FARE IN MODO CHE TUTTO IL BODY SIA SCROLLABILE ANCHE LATERALMENTE?

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Se metti un contenitore con dimensioni larghezza fissa automaticamente se rimpicciolisci la "finestra" compare lo scroll (verticale e orizzontale), ma gestire il layout fisso/fluido è difficilissimo
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    sembra risolvibile con i soli css, sposto

  5. #5
    1)Quindi nel mio caso il contenitore sarebbe il body, e quindi dovrei dare le dimansioni fisse al body tramite css, giusto?

    2)Ma se è così difficile, come si fa di solito? come ho scritto, la mia pagina è abbastnza semplice e consiste in 2 tab affiancati, uno dimensione fissa, l'altro deve occupare il resto della pagina in larghezza..il problema è che dentro al tab variabile c'è una tabella jqgrid, che come avevo scritto in un'altra discussione(e forse proprio tu mi avevi risposto qualcosa) ha il problema di come settare la larghezza delle colonne..ho risolto il tutto così:
    - prendo la larghezza della risoluzione dello schermo
    - ci tolgo la larghezza dei margini + la larghezza del primo tab(che come ho detto ha dimensione fissa)
    - ovviam la larghezza che rimane e proprio quella che devo assegnare al secondo tab
    - la assegno al secondo tab
    - poi prendo tale larghezza, la divido per 8, e poi assegno la larghezza delle colonne jqgrid usando i vari 1/8

    così com'è sarebbe perfetto,se non che, non avevo calcolato la possibilità che la finestra del browser possa essere rimpicciolità (e il mio primo sito,non sono molto pratico..)
    Quindi ho pensato che la soluzione perfetta,senza dover rifare tutto, fosse quella dello slider laterale...

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Originariamente inviato da Johannesynt
    1)Quindi nel mio caso il contenitore sarebbe il body, e quindi dovrei dare le dimansioni fisse al body tramite css, giusto?
    No, non sempre si puo` dare al body una dimensione diversa dall'HTML (in alcuni browser i due oggetti coincidono, e <html> e` sempre coincidente con la finestra del brwoser).

    Quello che devi fare e` racchiudere tutta la tua pagina in un contenitore (a volte chiamato "wrapper") a cui dai la dimensione che vuoi (o la dimensione minima che vuoi). A quel punto se la dimensione del wrapper e` maggiore della finestra, il browser mette le barre di scorrimento.

    2)Ma se è così difficile, come si fa di solito? come ho scritto, la mia pagina è abbastnza semplice e consiste in 2 tab affiancati, uno dimensione fissa, l'altro deve occupare il resto della pagina in larghezza..il problema è che dentro al tab variabile c'è una tabella jqgrid, che come avevo scritto in un'altra discussione(e forse proprio tu mi avevi risposto qualcosa) ha il problema di come settare la larghezza delle colonne..ho risolto il tutto così:
    - prendo la larghezza della risoluzione dello schermo
    - ci tolgo la larghezza dei margini + la larghezza del primo tab(che come ho detto ha dimensione fissa)
    - ovviam la larghezza che rimane e proprio quella che devo assegnare al secondo tab
    - la assegno al secondo tab
    - poi prendo tale larghezza, la divido per 8, e poi assegno la larghezza delle colonne jqgrid usando i vari 1/8

    così com'è sarebbe perfetto,se non che, non avevo calcolato la possibilità che la finestra del browser possa essere rimpicciolità (e il mio primo sito,non sono molto pratico..)
    Quindi ho pensato che la soluzione perfetta,senza dover rifare tutto, fosse quella dello slider laterale...
    La tua situazione non e` proprio tra le piu` semplici.
    Quello che ti consiglio e` di fare un giro tra i layout pronti (alcuni riferimenti tra i "link utili") e vedere se trovi qualcosa simile alla tua situazione.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Innazitutto ti ringrazio. Intanto che nessuno aveva risposto, avevo provato a dare la dimensione fissa a tutto il body a partire dalla risoluzione dello schermo..tutto bene se non che, questa pagina web deve essere compatibile anche con explorer 8+..ovviamente su explorer 9 funziona, ma su explorer 8 no..il risultato è che il secondo tab invece che ssere visualizzato affianco, viene messo sotto il primo, ed è strettissimo..in pratica per dare la larghezza al body faccio così:

    var larghezza = window.innerWidth;// ottengo la larghezza della risoluzione dello schermo
    $('body').css("width", larghezza-85); // -85 per i margini

    ho provato su safari 5, addirittura firefox 3.6 che ormai è datato,e funziona..ovviamente explorer crea problemi.può essere che explorer 8 non riconosca il comando jquery: $('body') ?

    2) Questo wrapper quindi come funziona? immagino sia un contenitore da inseire nel codice html subito dopo il <body>..ho cercato un pò ma non ho trovato molto..

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Per il codice postato da te, si riferisce al tuo programma lato server, quindi non ha senso postarlo qui e io non sono in grado di darti info. Semmai puoi provare nel forum dove si parla di quel pacchetto (o del tuo sistema operativo).

    Il "wrapper" e` un contenitore che sta dentro il body: di solito e` un <div> cui puoi assegnare una dimensione (o una dimensione minima).
    E` una soluzione che ho visto usare molte volte, anche da siti di layout pronti, e ci sono vari interventi anche in questo forum (prova con una ricerca).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Scusami se ti correggo ma il codice che ho postato è JAVASCRIPT con sintassi jquery, LATO CLIENT, e tra l'altro è jquery applicato a CSS.

    Riguardo al wrapper ti ringrazio, era quello che immaginavo,ma volevo proprio sapere si ci fosse un qualche tag apposta, invece un classico DIV va bene...

    Spero che qualcuno riesca a dirmi qualcosa riguardo al problema con explorer..non sono sicuro sia la sezione giusta, però siccome è un misto tra javascipt e css,intanto lo lascio qui

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.