mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 19.04.2024 06:36 Benutzername: Passwort: Auto-Login

Thema: Kampf mit :after wenn auf einen Link ein bestimmtes Element vom 10.05.2016


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Allgemeines - Nonprint -> Kampf mit :after wenn auf einen Link ein bestimmtes Element
Autor Nachricht
PixelAnarchist
Threadersteller

Dabei seit: 02.03.2008
Ort: Oberbayrisches Outback
Alter: 54
Geschlecht: Männlich
Verfasst Di 10.05.2016 15:33
Titel

Kampf mit :after wenn auf einen Link ein bestimmtes Element

Antworten mit Zitat Zum Seitenanfang

Hallo,

ich kämpf grad mit Pseudoelemente und wie die richtibge Selektion hinbekommen. Ich hab grad ne Stunde gegoogelt und irgendwie sind manche Themen für niemand interessant, aber egal. Ich bräucht nen Tipp, nen Hinweis, oder simpel einen Tritt dahin wo es weh tut, weil ich mich anstelle, wie der erste Mensch.

Mein Problem. Ich will auf einer Webseite nur nach einem Textlink ein Bild anzeigen, aber nicht nach Images, die z.B. auf eine größere Ansicht verweisen.

Code:
section > article a:after { content: url("pfad/zur/datei.png");}
section > article a:after+img { content: "";}

Nach meiner Logik ist hier alles richtig selektiert... aber offensichtlich nicht, weil alle links ein Bild angehängt bekommen.

Merci fürs helfen

Der Pixel Anarchist
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
top
Moderator

Dabei seit: 25.11.2003
Ort: Hedwig Holzbein
Alter: 52
Geschlecht: Männlich
Verfasst Di 10.05.2016 16:38
Titel

Antworten mit Zitat Zum Seitenanfang

Du willst das Aussehen der Links ändern in denen sich ein Bild befindet.
Mit dem "+" erreichst du aber etwas anderes. Schau dir dazu mal dieses Beispiel an:
http://www.css4you.de/wscss/css04.html#adjacentselector


Ist an den Bild-Links selbst denn eine Gemeinsamkeit an denen man sich orientieren könnte?
Z.B. könnte das hier alle Links beeinflussen, dessen Linkziel auf ".jpg" endet:

section > article a[href$=".jpg"]:after { content: "";}
  View user's profile Private Nachricht senden
Anzeige
Anzeige
PixelAnarchist
Threadersteller

Dabei seit: 02.03.2008
Ort: Oberbayrisches Outback
Alter: 54
Geschlecht: Männlich
Verfasst Mi 11.05.2016 14:44
Titel

Antworten mit Zitat Zum Seitenanfang

Hi top,

es sind überwiegend png und jpg Dateien, um die ein a-Element liegt.

ich habe wirklich lange nach infos zu Attributen mit dem Syntax *[***] gesucht, aber leider kein wirklich verständliche Doku dazu im Netz gefunden. Selbst meine vielen Fachbücher lassen sich nicht besonders dazu aus.

Trotzdem dass ich meinen Code angepasst habe, wird immer noch, hinter Bildern, die zusätzliche Grafik angezeigt. Sowohl auf Firefox als auch auf Opera. Chrome habe ich noch nicht ausprobiert.

Wenn also jemand einen Tipp hat, wo sich im Netz entsprechend eine Anleitung finde, bitte ich um einen Link

Der Pixel Anarchist
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
PixelAnarchist
Threadersteller

Dabei seit: 02.03.2008
Ort: Oberbayrisches Outback
Alter: 54
Geschlecht: Männlich
Verfasst Mi 11.05.2016 14:55
Titel

Antworten mit Zitat Zum Seitenanfang

Top, ich habe noch was vergessen. Alle links zu Bildern haben ein Ziel, in welchem der String ?attachment vorkommt.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
PixelAnarchist
Threadersteller

Dabei seit: 02.03.2008
Ort: Oberbayrisches Outback
Alter: 54
Geschlecht: Männlich
Verfasst Mi 11.05.2016 15:23
Titel

Antworten mit Zitat Zum Seitenanfang

Bin ich zu doof.. aber ich finde keine Option meine Postings zu editieren...

egal.. Ich versuche mein Problem noch einmal zu klarifizieren.

Ich möchte dass nach Links, welche um ein reines Textelement liegen ein Bild angehängt werden soll. Liegt ein Link um ein anderes Objekt, welches z.B. ein Bild ist, dann soll das Bild nicht angehängt werden.

Ich bin für alle Lösungsvorschläge offen.

Der Pixel Anarchist
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
SimonDerDude

Dabei seit: 15.01.2010
Ort: error: undefined
Alter: 35
Geschlecht: Männlich
Verfasst Mi 11.05.2016 16:11
Titel

Antworten mit Zitat Zum Seitenanfang

Du wirst nicht drum herum kommen deine HTML-Struktur zu überdenken und ggf. um eine Klasse zu erweitern, oder dir wie top es beschrieben hat die Übereinstimmungen von Bildlinks zu Nutze machst. Wenn du CSS verstehst weißt du, dass Selektoren von rechts nach links gelesen werden und Browser somit von innen nach außen arbeiten ... Parent-Selektoren wie :has() sind im CSS4 working draft vorhanden.

//edit
... theoretisch müsste es a img+:after heißen *ha ha*


Zuletzt bearbeitet von SimonDerDude am Mi 11.05.2016 16:21, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
top
Moderator

Dabei seit: 25.11.2003
Ort: Hedwig Holzbein
Alter: 52
Geschlecht: Männlich
Verfasst Mi 11.05.2016 17:38
Titel

Antworten mit Zitat Zum Seitenanfang

PixelAnarchist hat geschrieben:
...

ich habe wirklich lange nach infos zu Attributen mit dem Syntax *[***] gesucht, aber leider kein wirklich verständliche Doku dazu im Netz gefunden. Selbst meine vielen Fachbücher lassen sich nicht besonders dazu aus.

...


Die Dinger nennen sich attributabhängige Selektoren. Damit sollten sich ein paar verständliche Anleitungen finden lassen.
  View user's profile Private Nachricht senden
HerrSeeliger

Dabei seit: 25.01.2015
Ort: Kassel
Alter: 43
Geschlecht: -
Verfasst Mo 16.05.2016 19:33
Titel

Antworten mit Zitat Zum Seitenanfang

Wenn alle Text-Links NICHT in der HREF-URL den String "?attachment" haben, dann kann man mit der Pseudo-Klasse :not und dem Attribute-Selektor mit Zusatz Asterix (*) alle a auswählen die woanders hingehen. Funktioniert aber nur in diesem speziellen Anwendungsfall.

Code:
section > article a:not([href*=?attachment])::after { content: url("bild.jpg");}


Der Asterix ist ein Platzhalter für "enthält den Wert".

Beispiel
Im unteren Beispiel wird hinter den beiden Textlinks ein Smilie angezeigt. Hinter den Katzenbildern aber nicht. Die Katzenbilder linken auf größere Katzenbilder. Sie haben gemeinsam dass sie im href placekitten haben.
Code:

<!doctype HTML>
   <head>
      <style>
         section > article a:not([href*=placekitten])::after { content: url("http://www.ugly-smilies.de/data/ugly.gif");}
         section > article a {display: block;}
      </style>

   </head>
   <body>

      <section>
         <article>
            <a href="#">Textlink</a>
            <a href="https://placekitten.com/600/900"><img src="https://placekitten.com/60/90"></a>
            <a href="https://placekitten.com/900/500"><img src="https://placekitten.com/90/50"></a>
            <a href="#">Textlink</a>
         </article>   
      </section>

   </body>
</html>


Zuletzt bearbeitet von HerrSeeliger am Mo 16.05.2016 19:37, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen CSS für bestimmtes Element auf fremden Webseite ermitteln
padding für das link <a> Element?
Element > link (href) per JS erweitern/abändern
per css anderes list element zuweisen wenn im li ein link is
PDF Seiten-"link" Element mit Acrobat ?
über css ein Element nach definiertem Element ansprechen
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Allgemeines - Nonprint


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.