Kai: Styles ändern ehe Objekte angezeigt werden

Hallo,
ich grübele an einem Problem und befürchte, dass die
Lösung mit CSS/Javascript nicht möglich ist:

Ich habe ein unsichtbares Div (Visibility:hidden), welches
durch Javascript beim Überfahren mit der Maus sichtbar
gemacht wird und beim verlassen wieder unsichtbar.

Im Moment ist die Voreinstellung im style-sheet "visible"
und wird durch ein "onload" in <body> auf "hidden" gestellt.
Somit sehe ich natürlich kurz den Inhalt, bevor das Div
ausblendet.

Wenn ich aber "hidden" als Voreinstellung im style-sheet nutze,
bleibt das Div für immer verborgen, wenn Javascript deaktiviert ist.

Nun die Frage:
Gibt es eine Möglichkeit, die styles per Javascript zu modifizieren,
ehe das betreffende Element dargestellt wird (befürchte: nein)?

Ein anderer Gedanke wäre, dass Div in einem <noscript>-Bereich
unterzubringen und alternativ mit Javascript zu erzeugen
und die Sichtbarkeit über verschiedene Klassen zu regeln.
Würde das funktionieren?

Danke und mfG, Kai

  1. Nun die Frage:
    Gibt es eine Möglichkeit, die styles per Javascript zu modifizieren,
    ehe das betreffende Element dargestellt wird (befürchte: nein)?

    Im Prinzip nein, aber du kannst auf den Bereich hinter dem Quellcode zugreifen.
    Also:

    <div ID="wasweissich">  
    </div>  
    <script type="text/javascript">  
    document.getElementById('wasweissich').style.visibility = 'hidden';  
    </script>
    

    Kann man vielleicht noch verfeinern, sollte aber eigentlich immer gehen.

    Struppi.

    --
    Javascript ist toll (Perl auch!)
  2. Hi,

    Wenn ich aber "hidden" als Voreinstellung im style-sheet nutze,
    bleibt das Div für immer verborgen, wenn Javascript deaktiviert ist.

    Gibt es eine Möglichkeit, die styles per Javascript zu modifizieren,
    ehe das betreffende Element dargestellt wird (befürchte: nein)?

    Ja. Neben Struppis Hinweis (das Script kann auch bereits schon im Element selbst stehen - also direkt hinter dem öffnenenden Tag) kannst Du auch das Stylesheet ändern (Coding: CSS-Regeln (& Stylesheets) auslesen & ändern), ergänzen(Coding: CSS-Stylesheets & -Regeln ergänzen) oder einfach auch mit write() ein neues erzeugen.

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!