Kann man unter s9y externe Links kennzeichnen, so dass hinter dem Link-Text z.b. ein Bild (Pfeil) oder Text erscheint?
Ciao
maxfli55
Externe Links kennzeichnen?
-
garvinhicking
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Re: Externe Links kennzeichnen?
Hi!
Leider kann man externe und interne Links voneinander nur unterscheiden, wenn du einen Link mit einer speziellen CSS-Klasse ausweist.
Also z.B.
Eine andere Lösung wäre, mit javascript dem Problem zu Leibe zu rücken. Es gibt scripts, die alle links untersuchen, relative links in absolute umwandeln und am ende schauen, welche von deiner domain wegzeigen. Das kostet jedoch einiges an performance, ist dafür aber gründlich. Ich habe sowas noch nie eingesetzt, da müsste man also mal speziell nach googlen oder hoffen, dass jemand anderes hie retwas davon weiß 
Grüße,
Garvin
Leider kann man externe und interne Links voneinander nur unterscheiden, wenn du einen Link mit einer speziellen CSS-Klasse ausweist.
Also z.B.
Code: Select all
<a class="ext" href="http://www.google.de/">google</a>
Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Re: Externe Links kennzeichnen?
Jein.garvinhicking wrote:Leider kann man externe und interne Links voneinander nur unterscheiden, wenn du einen Link mit einer speziellen CSS-Klasse ausweist.
Also z.B.Code: Select all
<a class="ext" href="http://www.google.de/">google</a>
Grundsätzlich ist das natürlich richtig, weil es die einzige rein CSS-basierte Methode ist, die in allen Browsern funktioniert, insofern wäre sie meines Erachtens absolut vorzuziehen. Leider ist sie mit Arbeit verbunden
Anständige[tm] Browser unterstützen bereits eine fortgeschrittene Methode, die eigentlich erst mit CSS Level 3 implementiert wird: Einen speziellen Attributselektor. Das geht dann etwa so (style.css):
Code: Select all
a[href^="http"] {
color: #f00;
}YL
-
stm999999999
- Regular
- Posts: 1531
- Joined: Tue Mar 07, 2006 11:25 pm
- Location: Berlin, Germany
- Contact:
Damit lassen sich übrigens noch ganz andere nette Dinge machen, wie etwa
Eigentlich wollte ich das ja mal als Plugin zusammenstellen ...
Code: Select all
a[href *="de.wikipedia.org"], a[title *="de.wikipedia.org"] {
padding: 5px 30px 5px 0;
background: transparent url(templates/stm/img/icons/Wikipedia-de.png) no-repeat center right;
}
/* websites (pictures and movies) */
a[href *="youtube.com/watch?"], a[href *="sevenload.com/videos/"], a[href *="metacafe.com/watch/"] {
padding: 5px 20px 5px 0;
background: transparent url(templates/stm/img/icons/icon_film.gif) no-repeat center right;
}
/* extensions */
a[href$='.doc'], a[href$='.rtf'],
a[title$='.doc'], a[title$='.rtf'] {
padding: 5px 20px 5px 0;
background: transparent url(templates/stm/img/icons/icon_doc.gif) no-repeat center right;
}
Ciao, Stephan
-
stm999999999
- Regular
- Posts: 1531
- Joined: Tue Mar 07, 2006 11:25 pm
- Location: Berlin, Germany
- Contact:
Re: Externe Links kennzeichnen?
Letzteres dürfte sich relativ leicht lösen lassen:yellowled wrote:Der Haken ist offensichtlich: So betrifft es alle Links in einem Blog, die mit "http" beginnen, also z.B. auch absolute Links auf das eigene Blog (wie etwa die homelinks im Header). Dafür erwischt es bleistiftsweise keine externen FTP- oder HTTPS-Links. Und es wird eben (noch) nicht von allen Browsern unterstützt ...Code: Select all
a[href^="http"] { color: #f00; }
Code: Select all
a[href^="http"], a[href^="https"], a[href^="ftp"] {
color: #f00;
}Ciao, Stephan
Re: Externe Links kennzeichnen?
Ja, sicher. Nur wird der benötigte CSS-Code umso länger, desto mehr man bedient - schließlich müsste man , um es ganz korrekt zu machen, dann auch interne Ausnahmeregelungen einbauen. Natürlich ist das letztlich nicht schwer, aber doch relativ viel Aufwand dafür, dass es bislang bestenfalls teilweise umgesetzt wird.stm999999999 wrote:Letzteres dürfte sich relativ leicht lösen lassen:
Code: Select all
a[href^="http"], a[href^="https"], a[href^="ftp"] { color: #f00; }
Zudem ist die obige Beispielformatierung ja noch simpel. Verwende mal verschiedene Linkicons, unterschiedliche Linkformatierungen für :link, :visited, :hover, :active und :focus (von :visited:hover usw. ganz zu schweigen), und baue dann noch Ausnahmestyles für Browser ein, die das Ganze (noch) nicht unterstützen ... das ist ein enormer Aufwand für etwas, was mit »class="external"« und etwas Disziplin beim Verfassen von Einträgen sehr viel simpler und zudem browserübergreifend zu lösen wäre (2 cents usw.
YL
-
stm999999999
- Regular
- Posts: 1531
- Joined: Tue Mar 07, 2006 11:25 pm
- Location: Berlin, Germany
- Contact:
naja, ob das nun soviel Aufwand ist!?
Guck Dir mal http://blog.stephan.manske-net.de/serendipity.css an, da habe ich jede Menge solcher Anweisungen drin und einmal gemacht ist es dauerhaft da ...
Und man könnte das sicher auch in ein Plugin packen, wo man dann die Ausnahmen einfach angeben kann.
BTW, man könnte das mit der class=extern vielleicht im exit-tracking-plugin unterbringen?
Guck Dir mal http://blog.stephan.manske-net.de/serendipity.css an, da habe ich jede Menge solcher Anweisungen drin und einmal gemacht ist es dauerhaft da ...
Und man könnte das sicher auch in ein Plugin packen, wo man dann die Ausnahmen einfach angeben kann.
BTW, man könnte das mit der class=extern vielleicht im exit-tracking-plugin unterbringen?
Ciao, Stephan
-
stm999999999
- Regular
- Posts: 1531
- Joined: Tue Mar 07, 2006 11:25 pm
- Location: Berlin, Germany
- Contact: