You are not logged in.

1

Sunday, August 12th 2012, 3:08pm

Aktuelle Browser und das Problem mit der Pseudoklasse a:visited

Allen Hallo und guten Tag.

Dies ist keine Frage zum BurningBoard, sondern eine allgemeine zu CSS - ich habe mich bisher an anderen Stellen vergeblich um einen Tipp bemüht (zB. bei xhtmlforum.de), darum möchte ich es doch hier einmal versuchen, weil ganz sicher auch hier die meisten Anwender das Problem schon kennen:
eine CSS-Deklaration hierzu ist zB. diese

a.nav-datei:link {
text-decoration: none;
color: #0000cd; background-color: #b0e0e6;
padding-top: 1px; padding-bottom: 2px; padding-left: 3px; padding-right: 3px;
font-weight: bold;
}

a.nav-datei:visited {
text-decoration: none;
color: #000000; background-color: #d9d9d9;
padding-top: 1px; padding-bottom: 2px; padding-left: 3px; padding-right: 3px;
font-weight: normal; letter-spacing: 0.05em;
font-style: oblique;
}

und die Einbindung ist wie diese

<li>
<p><a href="dummy.pdf" tabindex="100" class="nav-datei" target="_blank">dummy-pdf</a><span class="anmerkung"> (PDF, 1 kB)</span></p>
</li>

... wobei es einen Unterschied gibt, ob der Link innerhalb einer Liste oder in einem Text angeboten wird.
In Opera sieht es immer wie gewollt aus: grau hinterlegt, dünne bzw. normale Schriftstärke und kursiv.

Der Firefox 3.6 zeigt es ebenso.
Ab der Version 5 des FF wird der besuchte Link innerhalb eines Textes und auch in einer Liste nur noch grau hinterlegt, die Schrift BLEIBT fett und wird auch nicht kursiv dargestellt.
Und der aktuelle Firefox macht einen Unterschied zwischen Text und Liste, denn in einer Liste zeigt a:visited überhaupt KEINE Wirkung.
Ausprobiert habe ich das mit den mir zur Verfügung stehenden portable-Versionen (3.6, 5.0, 9.0, 11.0), dazwischen habe ich keine zum Testen.

Aber auch der iExplorer, Safari und Chrome gehen nicht oder nicht mehr entsprechend mit a:visited um.
Wißt Ihr da eine Lösung ?

Ich kann mich nicht an den Gedanken gewöhnen, daß mit CSS immer mehr
möglich wird, bewährte Funktionen aber gewissermaßen boykottiert werden
- auch wenn da der Datenschutz ein Grund sein mag ...
http://hyperkontext.at/weblog/artikel/cs…icherheitsleck/
:-)

This post has been edited 1 times, last edit by "inDigo.blau" (Aug 12th 2012, 3:40pm)


2

Sunday, August 12th 2012, 4:10pm

... so, habe jetzt mal eine Änderung gemäß der Darstellung aus
http://hyperkontext.at/weblog/artikel/cs…icherheitsleck/

Quoted

Wenn Browser also die von Mozilla erläuterte Art umsetzen, dann werden
mit der Pseudoklasse :visited nur mehr folgende Anweisungen verarbeitet:
color,
background-color,
border-color, border-*-color,
outline-color
ausprobiert, nämlich
a.nav-datei:link {
text-decoration: none;
color: #0000cd; background-color: #b0e0e6;
padding: 0px; padding-top: 1px; padding-bottom: 2px; padding-left: 3px;

padding-right: 3px;
outline: solid; outline-width: 2px; outline-color: white;
font-weight: bold;
}

a.nav-datei:visited {
text-decoration: none;
color: grey; background-color: #d9d9d9;
padding-top: 1px; padding-bottom: 2px;
padding-left: 3px; padding-right: 3px;
outline: solid; outline-width: 2px; outline-color: grey;
font-weight: normal;
letter-spacing: 0.05em;
font-style: oblique;
}

... 'visited' wird also mit der Hintergrundfarbe, der Textfarbe und der Umrandung gekennzeichnet - aber nicht mit dem Firefox bei einem Link in einer Liste !
Der iExplorer macht es, Firefox nicht, Safari und Chrome habe ich nicht zum Ausprobieren.

Das Problem bleibt: wie kann ich einigermaßen 'Browser-sicher' Links auch innerhalb von Listen als besucht darstellen lassen ?
:-)

3

Sunday, August 12th 2012, 6:55pm

Da wird nichts boykottiert und Datenschutz ist nicht ein Grund, sondern der Grund. Wenn deine Tests alle zeigen, dass es nicht (mehr) möglich ist, musst du wohl damit leben. Ich würde nicht damit rechnen, dass sich das Verhalten nochmal ändert.
Grüße
-noone-

Netzwerg

Member

  • "Netzwerg" is male

Posts: 5,549

Location: Ruhrpott

Occupation: Student

  • Send private message

4

Sunday, August 12th 2012, 7:07pm

Da wird nichts boykottiert und Datenschutz ist nicht ein Grund, sondern der Grund. Wenn deine Tests alle zeigen, dass es nicht (mehr) möglich ist, musst du wohl damit leben. Ich würde nicht damit rechnen, dass sich das Verhalten nochmal ändert.

Mich würde mal interessieren, in wie fern Datenschutz da ein Grund ist?

CSS wird browserseitig ausgewertet. Sprich beim Benutzer.

Selbst wenn man nun z.B. mit Internetcafes argumentiert, die Browser-history verrät genausoviel. Wenn ich die lösche ist außerdem auch die :visited Markierung weg.

Also da würde mich echt mal interessieren, welche Gründe man dafür anführen kann, dies so handhaben zu wollen.
Best regards,
Sebastian Teumert

5

Sunday, August 12th 2012, 7:42pm

Wenn ich mich richtig erinnere, steht das alles in dem verlinkten Artikel. Hattest du den übersehen?
Grüße
-noone-

6

Sunday, August 12th 2012, 7:47pm

War mir jetzt auch neu, hier steht es etwas ausführlicher drin:

http://www.web-tuts.de/css-history-hacks…-webseiten.html


„Gorgeous designs. We did it. You'll love it.“

Netzwerg

Member

  • "Netzwerg" is male

Posts: 5,549

Location: Ruhrpott

Occupation: Student

  • Send private message

7

Sunday, August 12th 2012, 8:14pm

Wenn ich mich richtig erinnere, steht das alles in dem verlinkten Artikel. Hattest du den übersehen?

Den hatte ich überflogen, der hat allerdings nicht wirklich enthalten, was genau daran nun die ausnutzbare Lücke ist. Der letzte Link hat diese Frage aber beantwortet.
Best regards,
Sebastian Teumert

8

Tuesday, August 14th 2012, 6:27am

Guten Morgen.

Gut, ich akzeptiere die Zusammenhänge zähneknirschend.
Browser-übergreifend stehen somit für a:visited Änderungen an der Text- und der Hintergrundfarbe eines Links zur Verfügung.

Hättet Ihr aber vielleicht eine Idee wie ich es schaffen kann, daß der Firefox diese Reaktion auch für Links innerhalb von Listen beibehält ?
Dort zeigt das Programm ja gar keine Änderungen an, und das hat nach meinem Verständnis nix mit den in den Links beschriebenen Hintergründen zu tun ... ??
:-)