Newsgroup: it.comp.www.html
Titolo: Problema rendering tabella in un div con scroll con FF3

Ciao,
con FF3 ho riscontrato un problema che con gli altri browser non mi 
capitava.
Ho una tabella molto larga, e vorrei incastrarla, all'interno di un sito 
con margini ben stabiliti (nell'esempio che vi allego, 600px), in un div 
che occupa al 100% questi margini e, se la tabella risulta più larga, 
aggiunge sotto uno scroll orizzontale in modo che non deformi tutto il 
sito; il div quindi rimane della larghezza stabilita.
Con FF2 e IE7 questo funziona, ma con FF3 no: lo scroll non funziona e 
la tabella deforma il div (e quindi tutto il sito)
Vi ho preparato un esempio html, dove il div più esterno con width:600px 
rappresenta una "simulazione" dei margini restrittivi del sito.
Il div sotto (e la tabella in esso contenuta) invece è ciò su cui dovrei 
agire per raggiungere il mio scopo.
File html: 
http://metaldetector.altervista.org/sigitm/x.html
Screenshot IE7: 
http://img57.imageshack.us/img57/623/xie7rt3.png
Screenshot FF2: 
http://img57.imageshack.us/img57/3579/xff2nc3.png
Screenshot FF3: 
http://img296.imageshack.us/img296/8925/xff3bp3.png
Secondo voi si riesce a modificare in modo che anche in FF3 funzioni?
O è proprio un errore nel motore di rendering di FF3?
Grazie.
-- 
SigiTM
Togli 'NOSPAMMM' per rispondermi.
http://it.youtube.com/profile_videos?user=sigitm
--
Newsgroup robomoderato - gli articoli vengono approvati automaticamente

 è proprio un errore nel motore di rendering di FF3?
Secondo me il bug e` in FF2 e IE7, perche` tu gli dici espressamente che 
la tabella deve essere larga il 100% del contenitore, e se e` piu` larga 
il browser non sa cosa fare. Io avrei sovrapposto le celle per farcela 
stare in 600 pixel, per esempio. :)
Togli il width="100%" dalla table, e usa min-width: 600px nei css della 
table.
Tieni conto che IE6 non supporta min-width, ma ci sono dei workaround 
(usare width su un css apposta per IE6).
Bye.


 (usare width su un css apposta per IE6).
Considera che la pagina fa parte di un software web gestionale, e quei 
"600px" del mio esempio non sono sempre 600px, dipende da vari fattori 
che cambiano dinamicamente (ad esempio se è aperto il menù, il width 
della pagina principale e delle tabelle superiori si restringe).
Quindi non posso indicare esplicitamente "600px" nel mio codice perché 
non funzionerebbe in tutti i casi.
Vorrei semplicemente che il div rispettasse le misure massime che ha a 
disposizione (100%, appunto).
Se dentro c'è un'immagine funziona, ma se c'è una table no.
E prima di FF3 funzionava anche con una table.
Grazie.
-- 
SigiTM
Togli 'NOSPAMMM' per rispondermi.
http://it.youtube.com/profile_videos?user=sigitm


 FF3 funzionava anche con una table.
L'immagine ha una sua dimensione, non gli stai dicendo che deve essere 
larga il 100% del contenitore. A quel punto il browser ha un pensiero in 
meno, e mette lo scroller.
La tabella, per sua natura, ha dimensioni dinamiche, in base al suo 
contenuto.
Bye.


 contenuto.
Appunto che è dinamica che risulta utilissimo avere un div esterno che 
ne limita la dimensione (mettendo la scrollbar) per non deformare il 
resto della pagina.
(da notare anche che se nel div metto una width fissa funziona, mentre 
non funziona solo con width:100% e con dentro una table)
Non capisco il perché di questo comportamento anomalo, e se è una 
decisione arbitraria degli sviluppatori di FF3 oppure se è proprio 
sbagliato secondo le specifiche HTML e tutti gli altri browser mi hanno 
sempre "fatto un favore" visualizzandomelo correttamente.
In alternativa, esiste un altro modo per fare ciò che mi serve?
Ciao e grazie.
-- 
SigiTM
Togli 'NOSPAMMM' per rispondermi.
http://it.youtube.com/profile_videos?user=sigitm


 width:100%) ma non è cambiato nulla.
Vedi sopra, non al div, alla table
 
Bye.


 Vedi sopra, non al div, alla table
Ho fatto come dici tu, ovvero nella versione riassunta è così:
  <div style="width: 600px">
   <div style="overflow-x: scroll; width: 100%;">
    <table style="min-width: 100%;" border="1">
Ma non cambia nulla... ho capito male?
Mettere uno stile nel css come dici tu, equivale a usare l'attributo 
style del tag direttamente nell'html, no?
Grazie.
-- 
SigiTM
Togli 'NOSPAMMM' per rispondermi.
http://it.youtube.com/profile_videos?user=sigitm


 style del tag direttamente nell'html, no?
Si`, l'unica differenza e` che lo style sul tag ha priorita` massima, 
quindi sovrascrive gli stili nel file css.
Bye.


 Io non posso testare, non ho ancora FF3 installato.
Ok, dove lo posso segnalare esattamente?
Ho scritto nel newsgroup mozilla.support.firefox e nel forum 
http://forums.mozillazine.org
.
Se ritieni che ci siano altri siti a cui poter scrivere, fammi sapere.
Ciao
-- 
SigiTM
Togli 'NOSPAMMM' per rispondermi.
http://it.youtube.com/profile_videos?user=sigitm


 mozilla.support.firefox e nel forum 
http://forums.mozillazine.org
.
https://bugzilla.mozilla.org/
Questo e` il bugtracker ufficiale. Prima controlla se il bug non e` gia` 
stato segnalato.
Bye.
