Beiträge von Sempervivum

    Zitat

    warum ist die sonne bei vw immer rund und bei prozent wird sie orval wenn man das fenster verkleinert ?

    Dafür gibt es zwei Wege:

    Code
    #sonne {
      width: 20vw;
      height: 20vw;

    Wie Du siehst, habe ich für Breite und Höhe jedes Mal 20vw genommen. Nimmst Du %, bezieht sich die Breite auf die Breite des umgebenden Containers und die Höhe auf die Höhe.

    Code
    background-image: radial-gradient(circle,
        yellow 70%,
        white 70%
      )

    Durch das Schlüsselwort "circle" wird ein Kreis erzwungen, auch wenn der Container rechteckig ist:

    https://jsfiddle.net/Sempervivum/0o8zaLdn/5/

    Du hast vollkommen Recht, um das Seitenverhältnis zu erhalten braucht man Javascript. Eine Ausnahme sind Bilder, dort kann man eine Seite auf 100% und die andere auf auto setzen. Bei der Sonne würde es sich anbieten, ein Bild zu nehmen.

    Auch wenn man einen radialen Farbverlauf mit radial-gradient und circle verwendet, bleibt dieser kreisförmig. Würde sich für den Regenbogen anbieten:https://jsfiddle.net/Sempervivum/0o8zaLdn/4/

    Das ist allerdings etwas verzwickt und unerwartet. Probiere einmal dies:

    Code
        for (a = 1; a <= 10; a++) {
                document.getElementById('aa').innerHTML += '<input type="text" id="jj' + a + '" value="' + a + '">';
                document.getElementById('jj' + a + '').value = 'JJ';
                console.log(document.getElementById('jj' + a + '').getAttribute('value'), document.getElementById('jj' + a + '').value);
            }

    Du siehst, dass die Zuweisung an "value" das Attribut "value" nicht ändert. Jedes Mal wenn Du das innerHTML änderst, wird es neu geparst und das Attribut wird wieder angezeigt.

    Die Lösung besteht darin, das Attribut zu setzen:

    Code
         for (a = 1; a <= 10; a++) {
                document.getElementById('aa').innerHTML += '<input type="text" id="jj' + a + '" value="' + a + '">';
                document.getElementById('jj' + a + '').setAttribute("value", 'JJ');
                console.log(document.getElementById('jj' + a + '').getAttribute('value'), document.getElementById('jj' + a + '').value);
            }

    Macht man es dagegen so:

    Code
        for (a = 1; a <= 10; a++) {
                var inp = document.createElement("input");
                inp.id = "jj" + a;
                inp.value = "JJ";
                document.getElementById('aa').append(inp);
            }

    sieht das Ergebnis im DOM so aus:

    html-seminar.de/woltlab/attachment/1286/

    Der Wert hat wie gewünscht "JJ" aber im DOM ist davon nichts zu sehen. Das HTML wird beim Einfügen nicht geparst.

    PS: Ich hatte mir dein Bild nicht richtig angesehen und die Orientierung des Winkels nicht berücksichtigt. So sollte es passen:

    Meine Lösung:

    Ich meine, ich hatte eine Lösung gepostet, aber ich sehe den Post nicht mehr. Vergessen, abzuschicken? Außerdem sieht dein Code anders aus als ich ihn erinnere. Hast Du ihn editiert?

    Ich konnte mit wenig Aufwand die Funktion für das Aktualisieren erweitern, so dass man auch das Farbschema ändern kann:

    Namen kannst Du ja entspr. deinem Schema ändern.

    Dann würde es so aussehen:

    Ich hatte ein paar Mal den Code verbessert und meinen Post geändert. Möglicher Weise hast Du da eine fehlerhafte Version erwischt. Probiere es jetzt noch Mal. Ich habe den Code aus Post #12 noch Mal zurück in meine Testseite kopiert und dort funktioniert er.

    Jetzt verstehe ich es besser. Ich empfehle, alle drei Balken am Anfang nur einmal zu erzeugen und dann nur noch nach Bedarf sichtbar oder unsichtbar zu machen und den Wert zu ändern.

    BTW: Wenn Du nur eine Farbe haben willst, kannst Du den Parameter colors einfach weg lassen.

    Ungetestet:

    Zitat

    sobald man ja doch ein menü punkt anklickt ,ist man ja meist auch auf einer anderen url,müsste man nicht trotzdem die aktuelle url oder so dann in cookies oder anders zwischen speichern ?

    IMO nein, denn anschließend sollte ja ein anderer Menüpunkt hervor gehoben werden entspr. der neuen Seite.

    Schau mal, ob dieses tut, was Du erwartest:

    Zitat

    das der Balken rumspackt

    Kannst Du das genauer beschreiben?

    Zitat

    wenn ich den Balken innerhalb der funktion erzeuge, welche dann immer wieder wegen des Intervalls durchlaufen wird

    Möglicher Weise nicht jedes Mal neu erzeugen, sondern den vorhanden aktualisieren?