Newsgroup: it.comp.lang.javascript
Titolo: <style type="text/javascript">

Nella creazione delle mie pagine web ho riscontrato molti problemi con i
fogli di stile. Non riesco a capire quali siano i criteri di compatibilità
fra i CSS e i browser Internet Explorer e Netscape in quanto solo alcune
funzioni (che in IE funzionano perfettamente) girano anche in Netscape.
Visto che non avevo altra scelta ho provato a cimentarmi nei fogli di stile
in javascript e ho trovato in una guida un esempio come questo:
a {color: red}
diventa
document.tags.a.color="red"
Fin qui ci siamo, ma come tradurre questo: ?
a:hover {color: red}
Il mio problema è il     :hover

 Il mio problema č il     :hover
e continuera` ad esserlo, purtroppo, perchč netscape non supporta l'hover
:-(.
per creare degli effetti hover con netscape, oltre al banale metodo dello
swap delle immagini, che perņ ti forza ad usare per l'appunto delle
immagini, puoi provare a giocare con la visibilitą dei layers. Cioč tu crei
due layers contenenti lo stesso link, ma con caratteristiche grafiche
diverse (
p.es
. diverso colore o diverso background etc.) e li posizioni
assolutamente nello stesso posto, rendi invisibile uno dei due (quello che
ti serve per l'effetto hover) e poi al momento dell'onmouseover cambi la
visibilitą di entrambi.
Rossella


Per ottenere lo stesso effetto con ie e con NS devi usare i soliti
trucchetti che ci costringe ad inventare l'arretrato netscape.
Ad esempio
a:hover {
 color: red
 background-color blue;
}
per farlo funzionare anche con netscape (pur essendo uno standard!!!!!!!)
devi aggiungere
<script language=JavaScript>
var hoverBgColor = "#0000ff";
var hoverColor   = "#ff0000";
function hover(layer) {
  var link, str;
  link = layer.document.links[0];
  str = '<a href="' + link.href + '"';
  if (link.target)
    str += ' target= "' + link.target + '"'
  str += '><font color="' + hoverColor + '">' + link.text + '</font>';
  layer.hoverLayer = new Layer(layer.clip.width, layer);
  layer.hoverLayer.document.open("text/html", "replace");
  layer.hoverLayer.document.write(str);
  layer.hoverLayer.document.close();
  layer.hoverLayer.bgColor = hoverBgColor;
  layer.hoverLayer.visibility =  "show";
  layer.onMouseOver = hoverOn;
  layer.onMouseOut  = hoverOff;
}
function hoverOn() {
  this.hoverLayer.visibility = "show";
}
function hoverOff() {
  this.hoverLayer.visibility = "hide";
}
</script>
ABBASSO I BROWSER CHE NON LEGGONO GLI STANDARD!!!!!!!!!!!
Liliana
http://liliana.OnTheWeb.nu
lil...@liliana.OnTheWeb.nu
 (  )(  )  
http://coccole.cjb.net
  ( °° )   #coccole
()~*~()    La chat più dolce che ci sia
 (_)-(_)   
lil...@coccole.cjb.net


-- 
per rispondere togli <toglimi> dall'indirizzo di posta. 

 Non mi sembra che l'hover sia contemplato nello standard html.
Ti sembra male, Mauro (si parlava di css).
Copio ed incollo da pagine contenenti le specifiche per i css del
http://www.w3.org
 : l'organismo che definisce gli standard
5.11.3 The dynamic pseudo-classes: :hover, :active, and :focus
Interactive user agents sometimes change the rendering in response to user
actions. CSS provides three pseudo-classes for common cases:
The :hover pseudo-class applies while the user designates an element (with
some pointing device), but does not activate it. For example, a visual user
agent could apply this pseudo-class when the cursor (mouse pointer) hovers
over a box generated by the element. User agents not supporting interactive
media do not have to support this pseudo-class. Some conforming user agents
supporting interactive media may not be able to support this pseudo-class
(e.g., a pen device).
The :active pseudo-class applies while an element is being activated by the
user. For example, between the times the user presses the mouse button and
releases it.
The :focus pseudo-class applies while an element has the focus (accepts
keyboard events, or other forms of text input).
A presto
