2016-07-21 38 views
1

Gibt es eine Lösung für die Einstellung der Farbe und die vertikale Position von Hyperlinks, die alle diese Bedingungen erfüllt?Wie wird die Farbe und die Position von Hyperlinks unterstrichen?

  1. Werke in modernen Browsern,
  2. reine CSS erfordert (ohne HTML-Elemente oder JavaScript hinzufügen),
  3. auch Werke in den Fällen, wenn ein Link bricht in mehrere Zeilen (dies ist der Hauptnachteil der meisten Lösungen, die ich kenne),
  4. funktioniert unabhängig davon, was display Wert der Hyperlink hat (inline, block, inline-block oder aufwendiger).

Ich habe alle Q & A durchgesehen, aber jede Lösung, die ich gefunden habe, scheitert an einem oder mehreren dieser Kriterien.

Antwort

0

Um die Unterstreichung anzupassen, können Sie Ihren "a" -Elementen Rahmen hinzufügen.

a{ 
     text-decoration: none; 
     border-bottom: 1px solid #yourcolor; 
    } 
+0

Leider , die vertikale Position der Unterstreichung kann nicht auf diese Weise eingestellt werden. (ZB verschieben Sie die Unterstreichung näher an Text oder Durchstreichen.) –

0

Ich benutze immer Pseudo-Klassen :before und :after für dieses

ich die Lösung befürchten, schlage ich vor, versagt auch die Anforderung von mehreren Leitungsverbindungen; aber du bist irgendwie vage hier. Möchten Sie, dass es einmal oder die ganze Verbindung in jeder Zeile unterstrichen wird? (Ich glaube, letzteres tut süß aussehen)

Räume Nur für diese Technik: Element muss eine andere Position als statisches Element muss entweder :before oder :after

hier beobachten: http://codepen.io/katerlouis/pen/xOWPRG

a { 
    color: blue; 
    text-decoration: none; 
    position: relative; 

    &:before { 
     transition: all 100ms ease-out; 
     content: ""; 
     position: absolute; 
     bottom: -5px; 
     left: 0; right: 0; 
     margin: auto; 
     width: 60%; height: 2px; 
     background: red; 
    } 
    &:hover:before { 
     width: 100%; 
    } 
} 
+0

Für mich ist der Hauptfall von mehreren Zeilen [wie folgt] (http://content.screencast.com/users/z1011001010111010010/folders/Default/media /738fc955-4411-4ec3-8ccf-94241481cc8b/07.21.2016-13.56.png). Ich möchte definitiv, dass solche Inline-Links richtig unterstrichen werden. –

+0

Ist Ihr Beispiel für Zeilenumbrüche nicht nur mit Inline-Elementen möglich? Wenn du es zu einem Inline-Block machst, würde es auf diese Weise umschlingen, oder? Also schau mir meinen Stift nochmal an: http://codepen.io/katerlouis/pen/xOWPRG –