Rumah > Artikel > hujung hadapan web > Mengapa CSS Saya yang Disuntik Tidak Digunakan dalam Skrip Kandungan Saya?
Menyelesaikan masalah Kegagalan Suntikan CSS dalam Skrip Kandungan
Dalam skrip kandungan, menyuntik CSS kadangkala terbukti mencabar. Mari kita mendalami isu biasa di mana CSS yang disuntik gagal muncul di halaman web.
Pernyataan Masalah:
Seorang pengguna menghadapi masalah menyuntik fail CSS ("myStyles .css") melalui skrip kandungan, walaupun memasukkannya dalam tatasusunan "css" fail manifest.json.
Petikan Manifes:
{ "content_scripts": [ { "matches": [ "http://*/*", "https://*/*", "file:///*/*"], "css": ["myStyles.css"], "js": ["myScript.js"], "all_frames": true } ] }
Punca Kemungkinan:
Walaupun lembaran gaya disuntik, ia mungkin tidak digunakan atas faktor seperti:
Penyelesaian:
Untuk menyelesaikan isu ini, pertimbangkan pilihan berikut:
1. Tingkatkan Kekhususan Peraturan CSS
Tingkatkan kekhususan peraturan CSS dalam "myStyles.css" untuk memastikan keutamaannya.
2. Gunakan Pengisytiharan "Penting"
Tambahkan "!penting" pada setiap peraturan CSS dalam "myStyles.css" untuk memaksa permohonan mereka.
#test { margin: 0 10px !important; background: #fff !important; padding: 3px !important; color: #000 !important; }
3. Suntikan CSS melalui Skrip Kandungan
Sebagai alternatif, suntik CSS secara dinamik melalui JavaScript dalam "myScript.js":
var style = document.createElement('link'); style.rel = 'stylesheet'; style.type = 'text/css'; style.href = chrome.extension.getURL('myStyles.css'); (document.head||document.documentElement).appendChild(style);
Pengubahsuaian Manifest:
Pastikan kunci "web_accessible_resources" disertakan dalam manifest.json (untuk versi manifes 2), membenarkan fail "myStyles.css" boleh diakses daripada halaman bukan sambungan.
{ "web_accessible_resources": ["myStyles.css"] }
Dengan melaksanakan penyelesaian ini, anda boleh menyelesaikan isu kegagalan suntikan CSS dengan berkesan dan memastikan gaya yang disuntik digunakan seperti yang dimaksudkan.
Atas ialah kandungan terperinci Mengapa CSS Saya yang Disuntik Tidak Digunakan dalam Skrip Kandungan Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!