Jika Anda ingin hanya menggunakan CSS, logika penonaktifan harus ditentukan oleh CSS.
Untuk memindahkan logika dalam definisi CSS, Anda harus menggunakan penyeleksi atribut. Berikut ini beberapa contohnya:
Nonaktifkan tautan yang memiliki href tepat: =
Anda dapat memilih untuk menonaktifkan tautan yang mengandung nilai href tertentu seperti:
<a href="//website.com/exact/path">Exact path</a>
[href="https://stackoverflow.com//website.com/exact/path"]{
pointer-events: none;
}
Nonaktifkan tautan yang berisi bagian jalan: *=
Di sini, tautan apa pun yang berisi /keyword/
jalur akan dinonaktifkan
<a href="//website.com/keyword/in/path">Contains in path</a>
[href*="/keyword/"]{
pointer-events: none;
}
Nonaktifkan tautan yang dimulai dengan: ^=
yang [attribute^=value]
sasaran Operator atribut yang dimulai dengan nilai tertentu. Memungkinkan Anda membuang situs web & mem-root path.
<a href="//website.com/begins/with/path">Begins with path</a>
[href^="//website.com/begins/with"]{
pointer-events: none;
}
Anda bahkan dapat menggunakannya untuk menonaktifkan tautan non-https. Sebagai contoh :
a:not([href^="https://"]){
pointer-events: none;
}
Nonaktifkan tautan yang diakhiri dengan: $=
The [attribute$=value]
Operator menargetkan atribut yang berakhir dengan nilai tertentu. Berguna untuk membuang ekstensi file.
<a href="/path/to/file.pdf">Link to pdf</a>
[href$=".pdf"]{
pointer-events: none;
}
Atau atribut lainnya
Css dapat menargetkan atribut HTML apa pun. Bisa jadi rel
, target
, data-custom
dan seterusnya ...
<a href="#" target="_blank">Blank link</a>
[target=_blank]{
pointer-events: none;
}
Menggabungkan pemilih atribut
Anda dapat membuat beberapa aturan. Katakanlah Anda ingin menonaktifkan setiap tautan eksternal, tetapi bukan yang menunjuk ke situs web Anda:
a[href*="//"]:not([href*="my-website.com"]) {
pointer-events: none;
}
Atau nonaktifkan tautan ke file pdf dari situs web tertentu:
<a href="//website.com/path/to/file.jpg">Link to image</a>
[href^="//website.com"][href$=".jpg"] {
color: red;
}
Dukungan browser
Selektor atribut didukung sejak IE7. :not()
pemilih sejak IE9.