Rumah > hujung hadapan web > tutorial css > Mengapa CSS Saya yang Disuntik Tidak Digunakan dalam Skrip Kandungan Saya?

Mengapa CSS Saya yang Disuntik Tidak Digunakan dalam Skrip Kandungan Saya?

Patricia Arquette
Lepaskan: 2024-11-10 17:17:03
asal
996 orang telah melayarinya

Why Is My Injected CSS Not Applying in My Content Script?

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
    }
  ]
}
Salin selepas log masuk

Punca Kemungkinan:

Walaupun lembaran gaya disuntik, ia mungkin tidak digunakan atas faktor seperti:

  • Peraturan CSS yang bercanggah: Gaya lain pada halaman web mungkin mengatasi peraturan CSS yang disuntik.

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;
}
Salin selepas log masuk

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);
Salin selepas log masuk

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"]
}
Salin selepas log masuk

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!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan