Announcement

Collapse
No announcement yet.

text-decoration für Speziallinks

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • text-decoration für Speziallinks

    Hi, ich versuche gerade CSS zu lernen, und habe da ein kleines Problem, bei dem ich nicht weiß, was ich falsch mache:

    Ich möchte für eine bestimmte Klasse von Links das Aussehen ändern, dazu habe ich einige Links als "listlink" deklariert und entsprechend formatiert:
    [highlight=css]
    .even {
    list-style: square;
    background-color: #FFFFFF;
    }

    .odd {
    list-style: square;
    background-color: #C0C0C0;
    }

    .listlink :link {
    color:#0000FF;
    text-decoration:none;
    }

    .listlink:visited {
    color:#6F6FFF;
    text-decoration:none;
    }

    .listlink:hover {
    color:red;
    }

    .listlink:active {
    color:red;
    }
    [/highlight]
    (Sollte dafür sorgen, dass Links in einer Liste ohne den Unterstrich dargestellt werden, irgendwie stört der da optisch, erst recht wenn ich die Listeneinträge ja von der Hintergrundfarbe her alteriere.)

    Die entsprechende Liste der Links sieht im HTML folgendermaßen aus:

    HTML Code:
    	<ul>
    		<li class="even"><a class="listlink" href="http://www.moviepilot.de/movies/interview-mit-einem-vampir">Interview mit einem Vampir</a></li>
    		<li class="odd"><a class="listlink" href="http://www.zweitausendeins.de/filmlexikon/?sucheNach=titel&wert=1764">Highlander</a></li>
    		<li class="even"><a class="listlink" href="http://www.moviemaze.de/filme/3306/clash-of-the-titans.html">Kampf der Titanen</a></li>
    		<li class="odd"><a class="listlink" href="http://www.imdb.com/title/tt0104070/">Death becomes her - Der Tod steht ihr gut</a></li>
    	</ul>
    Das mit den Farben übernimmt er korrekt, also scheint die Zuordnung des Elements zur Formatvorlage zu stimmen, und es ist auch kein grober Schnitzer drin, wie dass ich weiter oben eine schließende Klammer oder ein Semikolon vergessen haben könnte, trotzdem ist der Link aber weiterhin unterstrichen, seltsamerweise verschwindet der Unterstrich beim Hover, wenn ich dort zusätzlich zur Farbe auch ein text-decoration:none; eintrage.

    Wieso wird die Anweisung der text-decoration beim :link und :visited ignoriert (und zwar sowohl von Firefox als auch von IE 10)?

    Übrigens: wenn ich für alle Links die text-decoration auf none setze verschwindet der Unterstrich auch, aber das ist ja nicht das, was ich will, da ich sonst ja jeden anderen Link wieder in eine Klasse packen müsste, um den Unterstrich dort wieder darstellen zu lassen.

    Gruß
    Martin Dietz

    Edit: Als ich den Text hier gesehen habe, ist mir aufgefallen, dass das :link durch Leerzeichen abgetrennt war, nachdem ich das korrigiert hatte, habe ich jetzt genau das gegenteilige Problem, die Links werden besucht und unbesucht jetzt zwar ohne Unterstrich dargestellt, beim Hover und Active aber auch. Wieso wirkt sich die Maßnahme, die ich für :link setze, auch auf die anderen Zustände aus?
    Zuletzt editiert von M.Dietz; 17.04.2013, 09:28.

  • #2
    .listlink:link und .listlink:visited ohne Leerzeichen vor dem Doppelpunkt
    Christian

    Comment


    • #3
      Danke Christian, leider kam Deine Antwort nachdem ich es selbst gefunden und meine Anfrage entsprechend angepasst hatte.

      Kannst Du mir auch erklären, wieso die text-decoration Angabe der :link Pseudoklasse sich auf die Pseudoklassen :visited, :hover und :active auswirkt? Das verstehe ich nämlich gar nicht. Wenn ich das richtig aus den Online-Tutorien verstanden habe, sind das doch getrennte Pseudoklassen, oder? Und die text-decoration Angabe für .listlink:visited wird ja von der Angabe in .listlink:link sogar überschrieben, obwohl dort korrekterweise kein Leerzeichen ist, und sie in der CSS-Datei nach der :link Angabe steht. Wenn ich die Angabe im :visited auf blink oder line-through setze übernimmt er trotzdem weiter das, was in :link steht, und als für :link keine Angabe gemacht wurde (weil das ja wegen dem Leerzeichen nicht korrekt zugeordnet werden konnte) hat er ja auch die Angabe ignoriert.

      Comment


      • #4
        Hallo,
        Originally posted by M.Dietz View Post
        ...Wieso wirkt sich die Maßnahme, die ich für :link setze, auch auf die anderen Zustände aus?
        Das Pseudoelement :visited ist aus Sicherheitsgründen in neuen Browsern nur noch eingeschränkt nutzbar. So werden alle CSS Definitionen außer: color, background-color, border-color und outline-color ignoriert!!!!

        Gruß Falk
        Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

        Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

        Comment

        Working...
        X