1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

CSS-Problem: a:active funktioniert nicht!

Dieses Thema im Forum "Design" wurde erstellt von LisaMarie, 16. Mai 2009.

  1. LisaMarie

    LisaMarie Member

    Registriert seit:
    1. April 2009
    Beiträge:
    20
    Zustimmungen:
    0
    Hallo zusammen!

    Ich möchte gern, dass Seiten, auf denen ich mich aktuell befinde, im Link andersfarbig sind und unterstrichen werden.

    Das habe ich versucht, mit a:active zu lösen. Das klappt aber weder im IE noch im Firefox.

    Hier mal der Code:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Habe ich irgendwas falsch eingegeben?

    Liebe Grüße!
     
  2. MaD

    MaD Well-Known Member
    Ehrenmitglied

    Registriert seit:
    28. Januar 2006
    Beiträge:
    3.097
    Zustimmungen:
    0
    hast du mal einen Link, wo man sich das anschauen kann :confused:
     
  3. Mathilda

    Mathilda New Member

    Registriert seit:
    30. April 2009
    Beiträge:
    4
    Zustimmungen:
    0
    Na klar, sorry ;) Hier ist der Link. Es geht insbesondere um die Produktkategorieren in der Sidebar. Heißt: Die sollen unterstrichen und pink sein, wenn man sich auf der Seite befindet!

    Danke schonmal :)
     
  4. JonnyBauer

    JonnyBauer Well-Known Member

    Registriert seit:
    11. Oktober 2008
    Beiträge:
    93
    Zustimmungen:
    0
  5. FHenne

    FHenne Member

    Registriert seit:
    24. April 2009
    Beiträge:
    9
    Zustimmungen:
    0
    Hallo Mathilda,

    hab mir mal den Link angeschaut...

    Wenn ich das richtig verstanden habe willst du das so haben das der Link im Ruhezustand in schwarz erscheint beim drübergehen (hover) in Pink und beim draufklicken auch in Pink bleibt mit Text unterstrichen.

    Die dafür zuständigen CSS sind in deiner Style.css in:

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Solltest du Firefox verwenden schau dir mal das Plugin Firebug an. Das schmeisst dir alle CSS-Befehle raus wenn du auf untersuchen gehst.

    grüße
     
  6. Mathilda

    Mathilda New Member

    Registriert seit:
    30. April 2009
    Beiträge:
    4
    Zustimmungen:
    0
    Danke für deine Hilfe. Das scheint der richtige Ansatz zu sein. Klappt aber leider immer noch nicht richtig. Entweder sind alle Links grundsätzlich pink & unterstrichen, ohne dass sie aktiv sind oder ich mit der Maus drauf bin - oder es bleibt alles schwarz und ohne Unterstreichung. Hmmmm...
     
  7. FHenne

    FHenne Member

    Registriert seit:
    24. April 2009
    Beiträge:
    9
    Zustimmungen:
    0
    Hallo,

    ändere mal folgenden css ab

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    in

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    sollte dann eigendlich klappen das der Link welcher besucht wird und aktiv ist in Pink unterstrichen angezeigt wird.

    Da vorher der aktive Link den Farbcode #333333 angenommen hat.

    grüße
     
  8. Monika

    Monika Well-Known Member
    Ehrenmitglied

    Registriert seit:
    4. Juni 2005
    Beiträge:
    14.126
    Zustimmungen:
    2
    und eventuell fehlt auch noch
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  9. telekommander

    telekommander Well-Known Member

    Registriert seit:
    3. August 2005
    Beiträge:
    1.140
    Zustimmungen:
    0
    Ich lese schon 'ne Weile mit, anscheinend gibts hier ein Missverständnis und/oder du hast was falsch verstanden. Wie JonnyBauer schon beschrieben hat, braucht man dafür ein eigene Klasse um die gerade aktive Seite auch visuell hervorzuheben.
    a:active zu nutzen macht keinen Sinn, denn die Pseudo-Klasse :active ist nur dann relevant wenn z.B. ein onmousedown Event anliegt. Mit anderen Worten die Maustaste darf dabei nicht losgelassen werden. Ist der Link erstmal geklickt und ein Seitenwechsel angesagt, ist a:active auch nicht mehr Aktiv

    Ich hoffe, keine Verwirrung gestiftet zuhaben.
     
  10. Mathilda

    Mathilda New Member

    Registriert seit:
    30. April 2009
    Beiträge:
    4
    Zustimmungen:
    0
    Danke für die Info. Könnte man das Problem dann irgendwie anders lösen, wenn nicht über a:active?
     
  11. kaiser

    kaiser Well-Known Member

    Registriert seit:
    20. November 2008
    Beiträge:
    1.840
    Zustimmungen:
    0
  12. toscho

    toscho Well-Known Member

    Registriert seit:
    4. August 2006
    Beiträge:
    631
    Zustimmungen:
    0
    Ich habe mal ein Script geschrieben, das Links auf die aktuelle Seite ersetzt. Dann steht statt des Links ein <span class="current"> um den Text, das du bequem im Stylesheet ansprechen kannst.

    Der Vorteil daran: Das funktioniert auch für Besucher, die kein CSS verwerten (können).
     
  13. flopi78

    flopi78 Well-Known Member

    Registriert seit:
    15. Oktober 2005
    Beiträge:
    184
    Zustimmungen:
    0
    Ich hab genau wie beschrieben dies versucht, aber es funktioniert nicht.

    Der Link soll beim anklicken eingefärbt bleiben, bis man die Seite wieder verlässt. Das Problem ist aber wohl eher, dass beim anklicken die Seite komplett neu geladen wird und somit keine Links mehr aktiv sein können, ausser die Seite wäre mit Frames aufgebaut. Oder seh ich das falsch?

    Suche daher nach einer Lösung, die auch funktioniert. Gibt es vielleicht ein Plugin dafür?

    Mein CSS sieht so aus:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Und Header.php:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  14. alchymyth

    alchymyth Well-Known Member

    Registriert seit:
    7. Juni 2009
    Beiträge:
    3.959
    Zustimmungen:
    1
    was ist 'funktioniert nicht' in einem ganzen satz?
    mit einzelheiten?

    wie koennen alle links die css class .current_page_item zur selben zeit haben?

    '.current_page_item' bedeutet soviel wie 'aktive seite'

    ist das menu handprogrammiert?

    ('normal' hat nur die seite, auf der du dich befindest, die class .current_page_item ; das ist von der wordpress function fuer seiten links 'wp_list_pages()' so vorgesehen. )
    http://codex.wordpress.org/Function_Reference/wp_list_pages
    http://codex.wordpress.org/Function_Reference/wp_list_pages#Markup_and_styling_of_page_items

    ausserdem passiert diese kombination nie:
    #menu ul.current_page_item li a { color: #e2001a; }

    der 'ungeordnete list' tag 'ul' hat nie die class '.current_page_item'; die ist immer am 'li' tag.

    und dieser style:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    hat hoechstwahrscheinlich auch keine auswirkung, weil das, was sichtbar ist, der link tag ist.
    zugehoeriger style:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  15. flopi78

    flopi78 Well-Known Member

    Registriert seit:
    15. Oktober 2005
    Beiträge:
    184
    Zustimmungen:
    0
    Es handelt sich um dieses Theme:
    http://www.simplewordpressthemes.org/clean-type.html

    @alchymyth: Ich bin mehr der Designer und weniger der Programmierer. Kenn mich da nicht so im Detail aus. Schön, wenn Du mir die Fehler aufzeigst, aber kannst Du mir dann auch sagen, wie es richtig heissen muss? Vielen Dank.
     
  16. alchymyth

    alchymyth Well-Known Member

    Registriert seit:
    7. Juni 2009
    Beiträge:
    3.959
    Zustimmungen:
    1
    klar, aber wenn aus deinem beitrag nicht einmal hervorgeht, wie du das menu erstellt hast, ist es nicht ganz einfach, da einen anfang zu machen.

    ich hab schon auf die 'wp_list_pages()' hingewiesen;
    auf die ueberfluessigne, da falschen, styles, und die verbesserung des eines styles - alles zusammen sollte dir schon weiterhelfen.

    und jetzt mit einem link zum theme (solange es frei downloadbar ist) geht wahrscheinlich mehr.

    NB - zur zeit geht der download des themes nicht :confused:

    kannst du den code der header.php hier posten?

    und ein link zu deiner seite waere immer noch der beste weg, hilfe mit ccss zu bekommen.
     
  17. flopi78

    flopi78 Well-Known Member

    Registriert seit:
    15. Oktober 2005
    Beiträge:
    184
    Zustimmungen:
    0
    Nochmals zur Verdeutlichung: Ich habe das Theme runtergeladen (hier der richtige Link) und installliert:
    http://www.freewpthemes.net/preview/cleantype/

    Danach hab ich Schriften, Farben, Design im CSS verändert sowie die Links in der Menuleiste im header.php. Da die Original-Website im Wartungsmodus ist und extern nicht aufgerufen werden kann, hier eine Testseite:
    http://www.fpoint.ch/wp-testseite/

    Ansonsten hab ich – was mein Aktiv-Link-Problem betrifft – am Code nichts verändert, dieser wurde vom Theme-Autor so geschrieben.

    header.php
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  18. alchymyth

    alchymyth Well-Known Member

    Registriert seit:
    7. Juni 2009
    Beiträge:
    3.959
    Zustimmungen:
    1
    eigentlich sollte das menu dynamisch erstellt werden, d.h. fuer jede seite, die du im hintergrund erstellst, wird ein menue-punkt automatisch dargestellt.

    wenn du aus wichtigen gruenden das per hand machen musst, ist das ein wenig aufwendiger, die 'current' class richtig zuzuordnen.
    (nicht statisch, wie in deinem beispiel. auch wird das besser mit absoluten link url gehen.)

    beispiel ist im original code schon in der headernavi:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    mit der if-abfrage wird geprueft, ob der blog die entsprechende seite anzeigt, und dann wird '.current_page_item' vergeben.
    http://codex.wordpress.org/Conditional_Tags

    umgesetzt (unter der annahme, dass die menu-punkte alles seiten (pages) sind:

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    am besten, 'vergess' das handgemachte menu; lass die wordpress function das machen - wie es auch die seitenliste in der sidebar macht.
    die seiten koennen in der reihenfolge sortiert werden;
    http://codex.wordpress.org/Function_Reference/wp_list_pages
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    dann sollte eigenlich das 'current' problem von alleine verschwinden.


    edit: der style fuer 'current' sollte so sein (die zweite zeile mit :hover nur wenn fuer 'mouseover' andere farben sein sollen):
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
    #18 alchymyth, 11. September 2010
    Zuletzt bearbeitet: 11. September 2010
  19. flopi78

    flopi78 Well-Known Member

    Registriert seit:
    15. Oktober 2005
    Beiträge:
    184
    Zustimmungen:
    0
    Vielen Dank alchymyth! Jetzt funktionieren die Links, wie ich es mir vorgestellt habe. Nur noch eine Kleinigkeit: "Home" ist immer rot (MouseOver) und wird nicht mehr blau (MouseOut), wenn man eine andere Seite anklickt. Woran kann das liegen?

    http://www.fpoint.ch/wp-testseite

    Nochmals vielen Dank für deine ausführlichen Antworten/Hilfestellungen.
     
  20. alchymyth

    alchymyth Well-Known Member

    Registriert seit:
    7. Juni 2009
    Beiträge:
    3.959
    Zustimmungen:
    1
    das kommt von der class .active, die der home link aus irgendeinem grund immer hat:

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    im obigen style das hier entfernen:
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    hier ist der dazugehoerige abschnitt aus der header.php:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden