The content
properti di CSS digunakan dalam hubungannya dengan pseudo-elemen ::before
dan ::after
. Ini digunakan untuk memasukkan konten secara harfiah. Ada empat jenis nilai yang dapat dimilikinya.
Tali
.name::before ( content: "Name: "; )
Kemudian elemen seperti ini:
Chris
Akan dirender seperti ini:
Name: Chris
Ini juga bisa berupa string kosong, yang biasanya terlihat pada hal-hal seperti clearfix.
Melawan
div::before ( content: counter(my-counter); )
Informasi lebih lanjut tentang itu.
Gambar
div::before ( content: url(image.jpg.webp); )
Ini secara harfiah adalah sebuah gambar di halaman seperti yang diharapkan. Bisa juga berupa gradien. Perhatikan bahwa Anda tidak dapat mengubah dimensi gambar saat disisipkan dengan cara ini. Anda juga bisa menyisipkan gambar dengan menggunakan string kosong untuk konten, membuatnya dengan
display: block
cara tertentu, mengukurnya, dan menggunakan background-image
. Dengan cara itu Anda bisa mengubah ukurannya dengan background-size
.
Atribut
Anda dapat menggunakan nilai (string, bagaimanapun) yang diambil langsung dari atribut di HTML.
60
(data-visual-label)::before ( content: attr(data-visual-label) ": "; ) /* Classic print trick! Show URLs! */ @media (print) ( a(href)::after ( content: " (" attr(href) ") "; /* you could combine a url() in here even if you wanted */ ) )
The attr()
fungsi tidak memiliki “jenis” dulu, sehingga Anda tidak bisa lewat nilai seperti 20px
(hanya string), tapi suatu hari nanti!
teks alternatif
Spesifikasi mengatakan bahwa Anda dapat menggunakan a /
dalam sintaks untuk mencantumkan teks alternatif. Sebagai contoh…
.el::before ( content: "⭐️" / "Alternate Text for that star"; content: "→" / ""; /* Visual only, don't read. */ )
Mungkin Anda bisa menggunakannya seperti…
- Make Bed
- Grocery Shop
- Sweep Driveway
(data-alt-pseudo="Completed")::before ( content: "✅"; /* fallback */ content: "✅" / attr(data-alt-pseudo); )
Informasi Lebih Lanjut
Konten yang dimasukkan dengan cara ini sebenarnya tidak ada di DOM, jadi ada beberapa batasan. Misalnya, Anda tidak dapat melampirkan acara secara langsung (hanya) ke pseudo-elemen. Juga tidak konsisten apakah teks yang disisipkan dengan cara ini dibaca oleh pembaca layar (biasanya saat ini) atau jika Anda dapat memilihnya (biasanya bukan hari ini).
- Hal-hal keren yang bisa dilakukan elemen pseuedo
- Presentasi tentang elemen semu
- Dokumen MDN
Dukungan Browser
Data dukungan browser ini berasal dari Caniuse, yang lebih detail. Angka menunjukkan bahwa browser mendukung fitur pada versi tersebut dan yang lebih baru.
Desktop
Chrome | Firefox | YAITU | Tepi | Safari |
---|---|---|---|---|
4 | 2 | 9 | 12 | 3.1 |
Ponsel / Tablet
Android Chrome | Android Firefox | Android | iOS Safari |
---|---|---|---|
88 | 85 | 2.1 | 3.2 |
Untuk Opera, url()
hanya didukung di versi 7+.