Div mit CSS-Inhalt, nach dem pseudo-element ist nicht sichtbar
Ich habe eine POC, die ich absolvieren muss und ich darf mit Hilfe von CSS update Stile eines Produkts. Ich ersetzt mit einem Bild von dem Produkt mit einem logo mit dem CSS-Attribut content.
Muss ich hinzufügen, eine einfache Schnur mit einer Telefonnummer angezeigt werden, nachdem dieses logo. Ich habe versucht, verwenden Sie die :after
pseudo-element, um dies zu tun. Dies funktioniert nur, wenn der Inhalt der div
leer ist (logo entfernt).
CSS:
.demo {
content: url('http://placehold.it/350x150')
}
.demo:after {
content: 'test';
display: inline-block;
}
HTML:
<div class="demo"></div>
Ich habe versucht, die änderung der display
zu inline-block
und harte Codierung der height
und width
für beide Regeln. Im wesentlichen alles, was ich finden konnte. Jegliche Hilfe würde sehr geschätzt werden.
JSFiddle hier: https://jsfiddle.net/qykbjznm/
- Mögliche Duplikate von: stackoverflow.com/questions/6949148/...
- Nicht einmal in der Nähe.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
content
- Eigenschaft ersetzt alle Inhalte innerhalb des Elements. Durch hinzufügencontent
zu einer nicht-pseudo-Selektor ist, wird der Inhalt ersetzen Sie die::before
und::after
pseudo-Selektor.Also versuchen, dies zu tun mit der
content
Eigenschaft innerhalb der::before
und::after
pseudo-Selektoren nur.CSS:
HTML:
content
funktioniert nur auf pseudo-Elemente ich.e:before
und:after
, so mitcontent
für.demo
fehl.content
angewendet wird, um ein nicht-pseudo-Selektor und rendering alscontent
würde innerhalb::before
/::after
was ist die Ursache für das problem er hatte.content
für pseudo-Elemente, ohne die es nicht machen. War irgendwie FYI. Trotzdem danke... @Jamy danke dir auch für die Klarstellung.Könnte man den hintergrund ersetzen von CSS, und legen Sie es als Bild in die HTML:
CSS:
HTML:
Oder tun dies sogar:
CSS:
HTML:
Gibt es zwei verschiedene Ergebnisse.
Einigen Browsern gelten die
content
- Eigenschaft auf tatsächliche Elemente, obwohl es nicht unterstützt CSS2. css-content-3 wird voraussichtlich um dies zu ermöglichen, aber bis die Stufe-3-Spezifikation zum standard wird, die realistischerweise nicht passieren, für ein paar Jahre (vor allem, wenn man bedenkt es ist nicht passiert in den letzten 14 Jahre), die Anwendungcontent
auf tatsächliche Elemente, die betrachtet werden sollten nicht-standard-Verhalten.Wenn der Wert der
content
Eigenschaft ist ein Bild, das Bild wird eingefügt, als Inhalt ersetzt. Und wenn diese angewendet wird, um eine tatsächliche element, das verhindert, dass das element von::before
und::after
pseudo-Elemente. Das ist, warum Ihr::after
pseudo-element nicht angezeigt.Wie erwähnt, alles, was Sie tun müssen ist, wenden Sie das Bild, um das element
::before
pseudo-element, nicht das element selbst.Ich habe Durcheinander herum mit Ihrem JSFiddle ein bisschen und ich fand, dass der einzige wirkliche Weg, um die Telefonnummer anzuzeigen, die unter der aktuellen div-Element, indem ein anderer div: