mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Sa 27.04.2024 11:50 Benutzername: Passwort: Auto-Login

Thema: Mouseover bei Links vom 01.08.2011


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> Mouseover bei Links
Seite: 1, 2  Weiter
Autor Nachricht
Melanie7
Threadersteller

Dabei seit: 01.08.2011
Ort: -
Alter: 54
Geschlecht: Weiblich
Verfasst Mo 01.08.2011 11:10
Titel

Mouseover bei Links

Antworten mit Zitat Zum Seitenanfang

Hallo,

ich bin auf der Suche nach einer Lösung für eine Mouseoverproblem.
Ich habe auf meiner Webseite eine Art Tag-Cloud gebastelt und möchte jetzt noch, dass jeder Wirt bei Mourseover die Farbe verändert. Da ich allerdings in der Tag Clould bereits verschiedene Farben verwende, möchte ich das nicht über das CSS machen, sondern einfach in den Code regeln.

Momentan sieht das für die einzelnen Worte so aus:

<a href="Leistung.html" style="font-size:24px; text-decoration:none; color: #B8B8DF;"><strong>Coaching</strong></a>
<a href="beratung.html" style="font-size:38px; text-decoration:none; color: #000066;"> <strong>Beratung</strong></a>

Wie kann ich es da ändern, dass die Worte die gleiche Größe behalten, aber jeweils die Farbe bei mouseover ändern?

Danke

Mel
  View user's profile Private Nachricht senden
top
Moderator

Dabei seit: 25.11.2003
Ort: Hedwig Holzbein
Alter: 52
Geschlecht: Männlich
Verfasst Mo 01.08.2011 11:18
Titel

Antworten mit Zitat Zum Seitenanfang

Kann man :hover auch mit inline-CSS definieren? * Keine Ahnung... *
Mach das das hier in die CSS-Datei:
Code:
.dieKlasseDeierCloud a:hover strong { color: #00FF00; }
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Melanie7
Threadersteller

Dabei seit: 01.08.2011
Ort: -
Alter: 54
Geschlecht: Weiblich
Verfasst Mo 01.08.2011 11:47
Titel

Antworten mit Zitat Zum Seitenanfang

Ja, aber wenn ich dass im CSS mache, dann müsste ich ja für jedes Wort einen eigenen Stlye definieren und die TagCloud besthet aus gut 25 Worten/Sätzen. Daher würde ich das gerne individuell im Code machen.
  View user's profile Private Nachricht senden
SimonDerDude

Dabei seit: 15.01.2010
Ort: error: undefined
Alter: 35
Geschlecht: Männlich
Verfasst Mo 01.08.2011 11:55
Titel

Antworten mit Zitat Zum Seitenanfang

Nein, mit dem von top beschriebenen Code sagst du auf gut Deutsch folgendes:
Alle Links (a) beim Zustand :hover innerhalb des Elements mit der Klasse dieKlasseDeierCloud und strong erhalten die Farbe #00FF00.

Das was du beschreibst sähe in CSS so aus:
Code:

a.dieKlasseDeierCloud:hover {bla}


Du musst nurnoch ein <div> um das ganze Packen. Ich nehme aber an es gibt bereits ein umschließendes Element, dann nimmste halt das. Wenn du allerdings jedem Link eine andere Farbe zuweisen möchtest, dann musst du in der Tat verschiedene Klassen anlegen.


Zuletzt bearbeitet von SimonDerDude am Mo 01.08.2011 12:09, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Melanie7
Threadersteller

Dabei seit: 01.08.2011
Ort: -
Alter: 54
Geschlecht: Weiblich
Verfasst Mo 01.08.2011 12:18
Titel

Antworten mit Zitat Zum Seitenanfang

Genau, ich will jedem Link eine eigene Farbe (sowohl im Normalzustand als auch im Mouseover) zuweisen und daher eben nicht mit dem CSS arbeiten, weil das - so glaube ich - nämlich komplizierter ist, als es einfach in den Code einzubauen.
  View user's profile Private Nachricht senden
SimonDerDude

Dabei seit: 15.01.2010
Ort: error: undefined
Alter: 35
Geschlecht: Männlich
Verfasst Mo 01.08.2011 12:39
Titel

Antworten mit Zitat Zum Seitenanfang

Achso :|
Nun gut, das löst du besser mit JavaScript -> jQuery. Einfach die Bibliothek in den <head> einbinden:
Code:

<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
   var allcolors = ['#ff0000', '#00ff00', '#0000ff', '#000000', '#990099']; // Farben definieren
   
   $('a').each(function(){ // a:link
      var color = allcolors[Math.floor(Math.random()*allcolors.length)];
      $(this).css('color',color);
   });
   $('a').hover(function(){ // a:hover
      var color = allcolors[Math.floor(Math.random()*allcolors.length)];
      $(this).css('color',color);
   });
});
<script>


Das Ding wirkt sich nun auf alle Links aus, einfach den Selektor ('a') mit deiner Klasse oder ID verbinden ('.deineCloud a').
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Melanie7
Threadersteller

Dabei seit: 01.08.2011
Ort: -
Alter: 54
Geschlecht: Weiblich
Verfasst Mo 01.08.2011 13:08
Titel

Antworten mit Zitat Zum Seitenanfang

Danke für den Vorschlag, aber eigentlich wollte ich das ohne Javascript hinbekommen. Dann bleibt woll doch nur die CSS-Lösung.
  View user's profile Private Nachricht senden
Karlarsch

Dabei seit: 05.02.2007
Ort: -
Alter: 58
Geschlecht: Männlich
Verfasst Mo 01.08.2011 13:57
Titel

Antworten mit Zitat Zum Seitenanfang

Inline-CSS ist nie eine gute Idee.

Hier mal ein paar Denkanstöße:

Ich gehe mal davon aus, dass du deine Tag-Cloud serverseitig generierst z.B. via PHP. Pack die Tags in ein Element z.B. <span> und gib diesem dann entsprechende Klassen.
Für die Wertigkeit könnten z.B. "value_1" bis "value_10" herhalten. In der zentralen CSS-Deklaration bekommen die dann eben die entsprechende Font-Size.

Unterschiedliche Farben könntest du dann mit :nth-child arbeiten.

Gruß
Karl
  View user's profile Private Nachricht senden
 
Ähnliche Themen Flash AS3: Links, Rechts scrollen (Mouseover)
Mouseover erweitert Text/Links CSS(3) oder...?
Flash Grafik per Mouseover nach links oder rechts bewegen
HTML Newsletter --> Links mit "mouseover" darstellen
Bildergalerie Mouseover andere Position & Mouseover Scroll
Mouseover
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Allgemeines - Nonprint


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.