Ich bin mir bewusst, dass die Pseudo-Klasse :empty
alle Elemente ohne Kinder auswählt, aber ich möchte nur Elemente mit Textknoten als untergeordnete Elemente auswählen.
Ich habe einen unteren Rand an meinen Hyperlinks, die eine andere Farbe als der Text haben, aber das ist ein Problem, weil die verlinkten Bilder auch diese Unterstreichung erhalten.
Ich habe a *:not(*){ border-bottom-width: 0; }
versucht, dies zu beheben, aber es hat nicht funktioniert. Gibt es eine Möglichkeit, a
-Tags mit nur Textknoten für Kinder auszuwählen?
Am Ende habe ich nur jQuery benutzt. Ich glaube nicht, dass es gerade mit CSS möglich ist.
%Vor% Wenn ich Ihr Problem richtig verstanden habe, versuchen Sie, Ihre verlinkten Bilder nicht unterstrichen zu lassen. Wenn ja, warum nicht etwas wie: a img { text-decoration:none }
?
Bearbeiten: Wenn die Links auf img-Tags nicht unterstrichen werden sollen, wenden Sie eine Klasse auf diese Links mit text-decoration:none
NEUE ANTWORT:
Wenn Sie einen Rahmen unter dem Bild, aber nicht den Text möchten, tun Sie dies:
%Vor%Wenn Sie das Gegenteil wollen (Rahmen unter dem Text, aber nicht das Bild), tun Sie dies:
%Vor%ALTE ANTWORT:
Wenn es sich nur um ein Problem mit Bildern handelt, die in Tags eingebettet sind, versuchen Sie Folgendes:
%Vor% Dies kann nicht ausgeführt werden, da die border
-Eigenschaft außerhalb der obersten Box Ihres Ankers angewendet und gerendert wird. Effektiv wäre die einzige Möglichkeit, einen solchen Effekt mit einem Rahmen zu erzielen, das Negieren der Eigenschaft. Manchmal kann es visuell akzeptabel sein, einen unteren Rand in einer Hintergrundfarbe zu verwenden, um ihn über dem deines Ankers zu überlagern - eine unzuverlässige Praxis, die man nicht mag. Vielleicht könnte der Effekt mit Filtern simuliert werden, aber ich würde nicht darauf zählen, dass er über Browser ausreichend gut unterstützt wird.
Was ich vorschlage, geht zurück zur text-decoration
-Eigenschaft *, während ich immer noch eine andere, unabhängige Unterstreichungsfarbe behalte '- insgesamt ein netter Ansatz, aber nicht ohne den Overhead eines zusätzlichen Elements:
Tags und Links html css pseudo-class