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

    Separazione inspiegabile tra due div

    Salve a tutti, sono nuovo e ho un problema con il mio sito in asp ke stò facendo con visual studio per la questura di Bolzano, ma prima vorrei fare i complimenti per l'ottima costruzione del sito!

    Ecco il mio problema. Il sito non è attualmente on-line, ne lo sarà mai, quindi vi lascio il codice e uno screen del sito. Praticamente il primo div, chiamato header, si separa dai div successivi. pur essendo contenuto assieme agli altri in un div chiamato container e con nulla tra un div e l'altro.. ecco uno screen:


    Avrete notato lo spazio nero che separa il primo div dalla sidebar e il main content.
    Eccovi il codice, vi prego aiutatemi le ho provate tutte ma non capisco cosa causa questa "rottura" :
    [CODE]
    <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Index.aspx.vb" Inherits="Index" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Ufficio Servizi ~ Homepage</title>
    <style type="text/css">
    body
    {
    font: 100% Verdana, Arial, Helvetica, sans-serif;
    margin: 0; /* è buona norma impostare a zero i valori margin e padding dell'elemento body per tenere conto delle diverse impostazioni predefinite dei browser*/
    padding: 0;
    text-align: center; /* centra il contenitore nei browser IE 5*. Il testo viene quindi impostato con l'allineamento predefinito a sinistra nel selettore #container */
    color: #000000;
    }
    .twoColLiqLtHdr #container {
    width: 80%; /* crea un contenitore pari all' 80% della larghezza del browser */ background: #FFFFFF;
    margin: 0 auto; /* i margini auto (insieme a una larghezza) centrano la pagina */
    border: 1px solid #000000;
    text-align: left;
    height: 44px;
    }
    .twoColLiqLtHdr #header
    {
    background-image: url('Immagini/gradiente1.png');
    background-repeat: repeat-x;
    height: 180px;
    width:auto;
    }
    .twoColLiqLtHdr #header h1
    {
    margin: 0; /* azzerando il valore margin dell'ultimo elemento del div #header si evita la compressione del margine, con la creazione di uno spazio inspiegabile tra i div. Se il div è circondato da un bordo, questo accorgimento non è necessario perché anche il bordo impedisce la compressione del margine */
    }
    /* Suggerimenti per sidebar1:
    1. Poiché si lavora in percentuali, è meglio non applicare un padding alla barra laterale, poiché, nei browser conformi agli standard, verrebbe aggiunto alla larghezza producendo una larghezza effettiva non prevedibile.
    2. Per creare spazio tra il lato del div e gli elementi al suo interno, è possibile applicare un margine sinistro e destro a tali elementi, come descritto nella regola ".twoColLiqLtHdr #sidebar1 p".
    3. Poiché Explorer calcola le larghezze dopo che è stato eseguito il rendering dell'elemento superiore, talvolta si possono verificare bug imprevisti nelle colonne basate su percentuali. Se si ha bisogno di risultati più prevedeibili, può essere opportuno passare a colonne con dimensioni in pixel.
    */
    .twoColLiqLtHdr #sidebar1
    {
    float: left;
    width: 260px;
    height: 580px;
    }
    .twoColLiqLtHdr #sidebar1 h3, .twoColLiqLtHdr #sidebar1 p
    {
    margin-left: 10px; /* è necessario applicare un margine sinistro e destro a ogni elemento che verrà inserito nelle colonne laterali */
    margin-right: 10px;
    }
    /* Suggerimenti per mainContent:
    1. Lo spazio tra mainContent e sidebar1 viene creato con il margine sinistro del div mainContent. Indipendentemente dalla quantità di contenuto presente nel div sidebar1, lo spazio della colonna rimane inalterato. È possibile rimuovere questo margine sinistro se si desidera che il testo del div #mainContent riempia lo spazio di #sidebar1 quando il contenuto di #sidebar1 finisce.
    2. Per evitare il problema del "float drop" a una risoluzione minima supportata di 800 x 600, gli elementi all'interno del div mainContent devono essere di 430 px o più piccoli (comprese le immagini).
    3. Nel commento condizionale di Internet Explorer riportato di seguito, la proprietà zoom viene utilizzata per assegnare "hasLayout" a mainContent, al fine di evitare vari bug specifici di IE.
    */
    .twoColLiqLtHdr #mainContent
    {
    margin: auto;
    width:auto;
    height: 580px;
    background-image: url('Immagini/gradiente.png');
    background-repeat: repeat-x;
    }
    .twoColLiqLtHdr #footer
    {
    padding: 0 10px; /* questo padding corrisponde all'allineamento a sinistra degli elementi nei div sovrastanti. */
    background-image: url(Immagini/gradiente3.png);
    height: 40px;
    }
    .twoColLiqLtHdr #footer p
    {
    margin: 0;
    /* azzerando il valore margin del primo elemento del footer si evita il rischio di compressione del margine, con la creazione di uno spazio tra i div */ padding: 10px 0;
    text-decoration: underline;
    font-variant: small-caps;
    font-style: italic;
    }
    /* Classi varie riutilizzabili */
    .fltrt
    {
    /* questa classe può essere utilizzata per rendere mobile un elemento a destra nella pagina. L'elemento reso mobile deve precedere l'elemento al quale deve essere affiancato sulla pagina. */
    float: right;
    margin-left: 8px;
    }
    .fltlft
    {
    /* questa classe può essere utilizzata per rendere mobile un elemento a sinistra nella pagina.*/
    float: left;
    margin-right: 8px;
    }
    .clearfloat
    {
    /* questa classe deve essere inserita in un elemento div o break e deve essere l'elemento finale prima della chiusura di un contenitore che deve contenere per intero un elemento mobile */
    clear: both;
    height: 0;
    font-size: 1px;
    line-height: 0px;
    }
    </style>
    <!--[if IE]>
    <style type="text/css">
    /* inserire in questo commento condizionale le correzioni css per tutte le versioni di IE */
    .twoColLiqLtHdr #sidebar1 { padding-top: 30px; }
    .twoColLiqLtHdr #mainContent { zoom: 1; padding-top: 15px; }
    /* la proprietà zoom proprietaria riportata sopra fornisce a IE l'elemento hasLayout necessario per evitare vari bug */
    .twoColLiqLtHdr
    {
    background-image: url('Immagini/bg.gif');
    }
    .style1
    {
    font-size: xx-small;
    font-style: italic;
    }
    </style>
    <![endif]--></head>
    <body class="twoColLiqLtHdr" style="background-image: url('Immagini/bg.png')">
    <form id="Form1" runat="server">
    <div id="container">
    <div id="header">
    <center>
    [img]Immagini/Questura di Bolzano.gif[/img]</center></div>
    <div id="sidebar1">
    <p align="center">
    [img]Immagini/Menù/nuovo/1.gif[/img]
    [img]Immagini/Menù/nuovo/2.gif[/img]
    [img]Immagini/Menù/nuovo/3.gif[/img]
    [img]Immagini/Menù/nuovo/4.gif[/img]
    [img]Immagini/Menù/nuovo/5.gif[/img]
    [img]Immagini/Menù/nuovo/6.gif[/img]
    [img]Immagini/Menù/nuovo/7.gif[/img]
    [img]Immagini/Menù/nuovo/8.gif[/img]
    [img]Immagini/Menù/nuovo/9.gif[/img]
    [img]Immagini/Menù/nuovo/10.gif[/img]
    [img]Immagini/Menù/nuovo/11.gif[/img]
    [img]Immagini/Menù/nuovo/12.gif[/img]
    [img]Immagini/Menù/nuovo/13.gif[/img]
    [img]Immagini/Menù/nuovo/14.gif[/img]</p>
    </div>
    <div id="mainContent">
    <h1> Upload Moduli Compilati</h1>
    <center>
    <asp:FileUpload ID="FileUpload1" runat="server" Width="312px" /></center>
    <hr width="0,1" />
    <asp:Button ID="Button1" runat="server" Text="Invia" Width="72px" />




    <asp:Label id="Label1" runat="server" Text="Label"></asp:Label>




    <h1>Accesso Ufficio Servizi</h1>
    <div align="center">
    <table border="0" width="51%" cellspacing="0" cellpadding="0">
    <tr>
    <td width="34%"><font face="Verdana" size="4" style="color: Black">Username:</font></td>
    <td width="66%"><font face="Verdana" size="4"><input type="text"
    name="username" style="width: 264px" /></font></td>
    </tr>
    <tr>
    <td width="34%"><font face="Verdana" size="4" style="color: Black">Password:</font></td>
    <td width="66%"><font face="Verdana" size="4"><input type="password"
    name="password" style="width: 264px" /></font></td>
    </tr>
    <tr>
    <td width="100%" colspan="2">
    <p align="center"><input type="submit" value="Invia" name="B1" /><input type="reset" value="Reimposta" name="B2"/></p></td>

    </tr>
    </table>
    </div></form>
    </div>
    <br class="clearfloat" />
    <div id="footer">
    <p align="right">Webmaster Spagnolo Francesco
    </p>
    </div>
    </div>
    </body>
    </html>
    [CODE]


    Ciao e grazie in anticipo!!

  2. #2
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    credo che questa sia la sezione sbagliata, ti sposto

  3. #3
    ah ok, scusate
    comunque aspetto risposte con pazienza

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    37
    Non ho ben capito il problema... non ho mai usato visual... ma visto che puoi direttamente lavorare sul codice così su due piedi ti do 2 consigli:

    1° se puoi dividi html/xhtml e css possibilmente perché messi insieme oltre a essere meno comprensibili devi editare per forza il file con i contenuti per modificare solo l'aspetto...

    2° usa un foglio di stile di azzeramento prima del tuo foglio di stile... Così sei sicuro di aver azzerato tutte le impostazioni di base...
    Ti consiglio quelli di Eric Meyer http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/

    3° Personalmente se ho problemi a capire da dove viene uno spazio " che non capisco da dove salta fuori" un buon metodo è creare un border:red solid 1px; ( bordino rosso da 1px) e lo metti in tutti i tuoi pezzi di codice ( anche quelli che non crederesti potrebbero incidere come testi e via dicendo... ) e li togli man mano ( oppure se preferisci cambi i colori per ogni sezione.. ) così facendo è quasi impossibile non trovare l'errore...

    4° se è proprio un bug allora prova a spostare il layout con valori negativi...
    ( in caso ti consiglio un foglio di stile fatto su misura per browser... cerca un pò in linea dovresti trovare il metodo per farlo caricare come preferenza ( ad esempio: per explorer usa il foglio di stile stile2.css...)

    5° Il problema sembra esserci in firefox( dall'immagine) hai provato anche in altri browser? Di solito comunque non ho mai trovato bug in firefox riguardanti i css... in explorer si invece... quanti ne vuoi

    6° Se non hai mai lavorato direttamente sul codice ti consiglio di usare notepad di windows (oppure notepad++) che vanno bene per lavorare sul codice, evita Wordpad, word...ecc perché quest'ultimi tendono a creare problemi di formattazione di codice ( aggiungendo cose inutili) quando li salvi...

    7° qui c'è un errore:
    padding: 0 10px; /*
    il padding: o è 0 o è 10...

    8° Nei link hai ripetuto 1 milione di volte...style="border-width: 0px"/>
    Da qui mi viene il dubbio che non l'hai scritto a mano...
    Ti consiglio...
    Raggruppa i link in una classe e attribuisci 1 volta sola lo stile x tutte le immagini, meglio no?

    Cerca la prox volta di postare codice formattato...

    Spero di esserti stato utile...
    Ciao
    Sarà, ma finché non funziona... non è migliorabile!

  5. #5
    Molto spesso è un problema di riversamente.

    Assegna overflow:hidden ai div che non si toccano

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.