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

    corpo posizione relativa non si adatta a menù laterali

    ciao ho un corpo in posizione relativa all'interno di esso due menù laterali in posizione assoluta e un div centrale col contenuto..siccome la pagina si adatta alle dimensioni dello schermo finchè uso 800x600 e 1024x768 non c'è problema quando la risoluzione è a 1280x1024 i menù laterali superano il contenuto centrale..esiste un modo in cui il corpo e contenuto si adattino all' altezza dei menù col cambiare delle risoluzioni? ovviamente se imposto 100% all'altezza del contenuto con firefox risolvo il problema mentre con explorer no...cerco quindi una soluzione alternativa.. :master: aiutos

  2. #2
    Se ho capito bene è perché il testo nel box dei contenuti si "allarga" all'aumentare della risoluzione del monitor e quindi diventa più "basso" dei menu, giusto? Due le soluzioni possibili:

    1. Imposta height: 100% anche agli elementi html e body (Explorer dovrebbe fare giusto così e Firefox non dovrebbe risentirne). Tuttavia non è che sia una soluzione molto pratica, specie se il tuo body ha dei padding o dei margin superiori e inferiori...

    2. Stabilisci un'altezza minima che il box dei contenuti deve comunque mantenere (tale per cui riesca sempre a superare in altezza il più alto dei due menu laterali). A questo punto nella regola di stile per il box dei contenuti aggiungi:

    codice:
    min-height: ALTEZZA MINIMA IN PIXEL;
    height: auto !important;
    height: ALTEZZA MINIMA IN PIXEL;
    Così facendo, il tuo box dei contenuti avrà sempre e comunque un'altezza minima di default sufficiente per "contenere" i menu posizionati in modo assoluto. Ovviamente basterebbe impostare solo min-height, ma Explorer (che è sempre il migliore in fatto di trovate geniali!) non supporta questa proprietà...quindi ci vuole un hack (impostando height 2 volte in quel modo) che sfrutta altri 2 suoi "buchi" per correggere questa mancanza! E lo chiamano pure browser...

  3. #3
    ti ringrazio ora funziona.
    devo ancora trovare l'hack che fa per me per impostare un max-width.
    ho cercato in rete come mi è stato suggerito, a me interessa che tutto il body abbia una larghezza massima quindi ho probato ad inserire nel body css questo codice:
    max-width:800px;
    width:expression(document.body.clientWidth > 800? "800px": "auto" );
    e non ha funzionato, o meglio funziona tutt'ora solo col firefox, questo codice l'ho trovato in questa pagina http://eldalie.blogspot.com/2004/10/...-explorer.html e come suggerimento viene spiegato:controlla le dimensioni del body, se sono >800 allora setta il width=800, else "auto"...
    ecco, io d sto suggerimento non so che farmene perchè non l'ho capito...

    come altre possibilità ho trovato in questa pagina http://www.doxdesk.com/software/js/minmax.html in js che dovrebbe far funzionare il tutto ma se fosse possibile preferirei usare solo una "scorciatoia" tramite i css
    qualcuno mi sa indirizzare alla soluzione del problema?

  4. #4
    Max-width e max-height sono proprietà che sarebbero utili in molti casi, se IE le supportasse!
    Da quanto ne so, non mi pare che con i soli CSS si possa "aggirare" questa mancanza assurda di quel browser...e purtroppo, le soluzioni con JavaScript non possono essere considerate "affidabili", dato che chiunque può navigare disabilitandolo.

    Quel codice controlla la proprietà clientWidth dell'oggetto body (è JavaScript a tutti gli effetti). clientWidth è una proprietà, se non erro, riconosciuta solo da IE (alla faccia del DOM standard!) o cmq, non da tutti i browser (Netscape utilizza invece document.width). In pratica, clientWidth esprime la "larghezza della pagina", riferendosi all'elemento body.
    Il codice imposta un "if in linea" (che è l'equivalente di un if...else). In pratica la struttura di quel codice è questa:

    if (CONDIZIONE)? ISTRUZIONI SE VERA : ISTRUZIONI SE FALSA;

    Quindi, se la condizione "larghezza del body > 800" è vera, lo script forza la larghezza ad essere cmq 800px (la max-width appunto). Se invece la condizione è falsa, lo script imposta la larghezza su auto (il browser la regola automaticamente occupando tutto lo spazio disponibile).

    Solo mi pare strano che questo script sia scritto nel codice CSS...non dovrebbe essere corretto. Ma vista la presenza di un qualcosa come width: expression(), mi sa che è una delle "soluzioni proprietarie" di IE...boh...magari mi sbaglio.

  5. #5
    si sembrerebbe da mettere direttamente nel css...metto il condizionale perchè a me non funziona...peccato non funzioni alla stessa maniere dell'attributo altezza...un bel important e siam tutti felici
    invece mi tocca sclerar per l'ennesima volta grazie al sinaptico IE...
    qualcuno è riuscito ad ottenere il funzionamento di max-width e per caso mi può spiegare come fare?
    seed suvvia dammi una mano tu che sei gentile

  6. #6
    Se potessi lo farei, ma ad implementare max-width e max-height su IE non ci ho mai provato. Con min-width e min-height non ci sono problemi perché sono proprietà che riguardano dimensioni minime (e si sa che IE le aumenta se il loro contenuto non riesce a starci dentro), ma con le dimensioni massime è molto più complessa la cosa (e forse non risolvibile via CSS)...

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.