Newsgroup: it.comp.lang.javascript
Titolo: IE6 - XHTML 1.0 Strict - CSS e incompatibilità....

Da stamattina cerco di far "ragionare" questa cosa.
Situazione: una pagina XHTML 1.0 Strict
Un layer con un loghetto che dovrebbe semplicemente puntare all'inizio 
della pagina con una classica ancora.
Ovviamente in Mozilla va tutto bene perché gli assegno la proprietà 
fixed dei css, per IE5 ha funzionato il solito workaround legato ad 
onscroll.
Lo stesso workaround funzionerebbe anche per IE6sp1 ma solo se elimino 
il doctype con la DTD, se lo rimetto (ed ovviamente e' necessario) non 
va più lo script, l'evento onscroll scatta (ne ho la conferma basta 
usare sposta2() invece di sposta() ) ma non viene aggioranta la 
proprietà scrollTop.
Qualcuno piu' esperto di me (Zer0, Cristiano, p. es.) con le 
idiosincrasie di IE mi da una mano?
L'alternativa e' anche accettabile: all'onload la funzione rende 
visibile il livello che e' stato posizionato dal css in basso a destra, 
ed al primo movimento della pagina se ne va a fondo e resta li.
Ma sarebbe molto piu' simpatico farlo restare visibile come per IE5 e 
Mozilla (non ho ancora avuto modo di provare IE5.5).
N.B. per Gianni: anche il tuo script che hai messo in JsDir.com non va 
piu' se gli do una DTD.
NN.BB
. anche una dtd caricata in modo PRIVATE dalla root del sito non 
risolve il problema.
Segue il codice, poche righe da ricostruire... qualcuno vuole avere in 
credito una pizza da riscuotere appena passa dalle mie parti? :-)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
"
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
">
<html xmlns="
http://www.w3.org/1999/xhtml
" lang="it" xml:lang="it">
<head>
<title>Untitled</title>
<script type="text/javascript">
<!--
 
if (navigator.userAgent.toLowerCase().indexOf("msie")!=-1)
	onscroll=sposta;
 
function sposta()
	{
	var pos=document.body.clientHeight+document.body.scrollTop-35;
	setTimeout("document.getElementById
('MicroLogo').style.top="+pos,50);
	}
 
function sposta2()
	{
	window.status=new Date();
	}
function works()
	{
	if (navigator.userAgent.toLowerCase().indexOf("gecko")!=-1) {
		document.getElementById("MicroLogo").style.position="fixed";
		document.getElementById
("MicroLogo").style.visibility="visible";
		}
	if (navigator.userAgent.toLowerCase().indexOf("msie")!=-1) 
		document.all.MicroLogo.style.visibility="visible";
	}
window.onload=works;
 //-->
</script>
<style type="text/css" media='screen'>
img {border : none ; }
#MicroLogo {
	position : absolute ;
	bottom : 5px ;
	right : 5px ;
	visibility : hidden ;
	}
</style>
</head>
<body>
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
<div id="MicroLogo"><a href='#top' class='NoHoverEffect' title=' ... ' >
<img src='img/micrologo.gif' alt=' bla bla bla ' />
</a></div>
</body>
</html>
-- 
Ciao, Riccardo
------------------------------------------------------------------------
http://www.jsdir.com
 ---- Bring Your Site To Life!!!!
------------------------------------------------------------------------
http://www.dev2dev.it
 - La rete ha connesso nuove particelle - D2D006
------------------------------------------------------------------------
Per rispondere: togli il PUNTO e metti un .

 	var pos=document.body.clientHeight+document.body.scrollTop-35;
	var 
pos=document.documentElement.clientHeight+document.documentElement.scrol
lTop-35;
P.S.
alert(document.compatMode);
divertiti :)
-- 
C'ya,
ZER0
  :. job profile - coder.gfxer.webDesigner
"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)

 idiosincrasie di IE mi da una mano?
Ahiahiahi, capiti male...non ho avuto ancora tempo di studiare nulla di ciň,
e quello che hai scritto (anche se lo script mi sembra "normale") mi pare
aramaico! (XHTML Strict, DTD...tutte parole sentite, letto qualcosa di DTD
ma mai applicato nulla)
Sorry, dovrň cimentarmi anch'io a breve ma per ora nulla

> in credito una pizza da riscuotere appena passa dalle mie parti? :-)
Etteppareva se "qualcuno" si lascia sfuggire un'occasione simile...si è
messo anche a studiare IE adesso! :-)

 Mado', mi sto collezionando cene a raffica :)
Aggiudicata!
Grazie.


 si è messo anche a studiare IE adesso! :-)
Beh, non e' mica solo IE, quel che ho scritto.. :)
E cmq l'ho sempre "studiato", in quanto oltre che essere usato su web (e 
quindi va "conosciuto"), le intranet su cui ho sviluppato erano tutte 
IE/Wintel based.. li mortacci loro. :)


, 
criosoftw...@tiscali.it
 says...

Lo conosci no? :-)
E poi a quanto ho capito lo pagano per pensare... figuriamoci se lui non 
ha tempo per studiare e sperimentare... al contrario di noi :-P
Che poi... studiare IE... se fosse un tantino decente e sapesse che vuol 
dire "fixed" facevo a meno di perdere delle ore dietro a Internet 
Cazzoner 6 :-)))
Fa' conto che prima di abbandonare (stamattina) ho perso quasi tre ore 
dietro ad IE, mentre ne sono bastate due questo pomeriggio per ottenere 
con N4 una visualizzazione _decente_ di un sito tableless/CSS2 :-(


 Grazie.
De nada, figurati.


 IE/Wintel based.. li mortacci loro. :)
Eh, appunto... e' tutt'oggi che sei in cima ai miei pensieri :-P


 Il punto e'.. quando mai io saro' dalle tue parti..? :D
Appena avrai voglia di andare al Mare. :-)
Un tuo amico (che cliccheggia da queste parti) forse fa una capatina.


 contrario di noi :-P
Se, se.. guardate che fancazzeggiare occupa un sacco di tempo :P
Ed ho da studiare un trittico di cose, e non riesco a seguirne mezza.. 
Adesso relativo al web non sto facendo quasi nulla.. in effetti mi 
chiedo "cos'e' che sto facendo"? :)
Mi piacerebbe rimettermi a spippolare su J2ME, o su Visual C++, senza 
contare tutti i giochi su PS2 che devo ancora finire di giocare.. >_<
Ah, che vita grama.. 


 Eh, appunto... e' tutt'oggi che sei in cima ai miei pensieri :-P
Uhm. Mi hai fatto qualche macumba? :P


> e sapesse che vuol dire "fixed"
La cosa stupenda e' che "fixed" lo sa benissimo cos'e'...
L'ho gia' detto un'altra volta... basta fare una prova: attribuire a
'position' un valore a caso (ad es.: 'rtfgdgh') e poi uno noto ('absolute',
'relative' e anche 'fixed'), sorpresa sorpresa questi li riconosce (facendo
una cosa tipo alert(document...style.position) l'altro no. Quindi 'fixed' lo
riconosce eccome....

 piu' se gli do una DTD.
Ehh, e che e'??

 Ehh, e che e'??
Ok, diciamo che ho capito...
Come posso fare per interrogare il browser per sapere se la pagina in
questione e' una pagina XHTML 1.0 Strict (tipo: document.xhtml)?
Infatti l'idea sarebbe quella di lasciare lo script praticamente così ma
aggiungendo tipo:
function top()
{
     return (document.xhtml &&
IE>=6)?document.documentElement.scrollTop:(document.body)?document.body.scro
llTop:(window.pageYOffset)?window.pageYOffset:(window.scrollY)?window.scroll
Y:0;
}

 questione e' una pagina XHTML 1.0 Strict (tipo: document.xhtml)?
Basterebbe leggere i miei post, dello stesso thread..


 Basterebbe leggere i miei post, dello stesso thread..
E' per caso document.compatMode???

 Ah, che vita grama..
Zer0...come direbbe un mio caro amico...FOTTITI!
:-)

 Zer0...come direbbe un mio caro amico...FOTTITI!
Guarda che e' vero.. La PS2 non la tocco piu' da mesi, non ho mai tempo 
di fare una beneamata mazza.. pulire casa/lavoro/palestra.. e in 
palestra non e' che abbia una vita sociale, sudo come un cammello e 
basta.
Recupero qualcosa solo nei week end nella mai terra natia.. Altrimenti 
sarei gia' da ricovero.


, 
criosoftw...@tiscali.it
 says...

Mi associo :-!


 Mi associo :-!
Bah, che ne volete capire voi, al tepore della vostra casa, con vostra 
moglie/ragazza a fianco, e amici su cui contare.. ;_;


 moglie/ragazza a fianco, e amici su cui contare.. ;_;
E non parliamo dei clienti che non ti pagano da 10 mesi per un lavoro 
completamente consegnato e spargono la voce che siete "inaffidabili".
Fra qualche giorno a 'sto tizio gli arriva un bel decreto ingiuntivo... 
e poi si comincia a ragionare di diffamazione... ma tu che ne puoi 
capire se a queste grane non devi badarci e devi solamente "tacere ed 
incassare"? :-))


 incassare"? :-))
Mi stai chiedendo di cambiare un lavoro come dipendente , con uno da 
freelancer, con in "budle" il passare la vita assieme alla persona che 
amo?
Dimmi dove devo firmare.


 moglie/ragazza a fianco, e amici su cui contare.. ;_;
Beh beh...
la compagna ok, ma per la casa sono in affitto (e peraltro ad un'ora di
strada dal lavoro), gli amici sono "invece pure" ad un'ora, al lavoro ho
grandi cazzi...insomma, ognuno ha le sue, caro Zer0...dobbiamo vederci una
sera che ti racconto un po' di cose "simpatiche" lavorative...

 sera che ti racconto un po' di cose "simpatiche" lavorative...
Okay, basta decidere luogo e orario.. :)


 "sottotrame" che sono in sospeso da qualche anno.
Ahi, ahi ahi... visto che sospetto con che cosa stai compensando, ti
consiglio di alternare mano e/o (visto che fai palestra) di fare un po' di
palestra correttiva :)

 Ahi, ahi ahi... 
[cut]
Al di la' del fatto che faccio palestra, ha cannato e non di poco il 
tiro :) Io sto parlando di "compagna", ovvero della persona che ami, di 
una ragazza fissa.
Di ragazze "floating point", ne trovo.. tra l'altro, il mondo ne e' 
pieno..


 Dimmi dove devo firmare.
Prima cercati la topa (anzi la "bella topa" Catarsi docet :-) poi ti 
dira' il Prete dove devi firmare! :-P


 pieno..
STRAROTFL!!!!!!


 natura del tuo lavoro :D
ROTFL