[Firefox] Markdown Preview fails to load workspace CSS via markdown.styles (NS_ERROR_UNKNOWN_HOST for vscode-resource.vscode-cdn.net)
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 42/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- typescript
Rechercherichtung
Reproduziere die Markdown-Vorschau mit markdown.styles auf test.css gesetzt in Firefox und überprüfe anschließend die Service-Worker-Registrierung, das Network-Panel und die Konsole auf die Anfrage an vscode-resource.vscode-cdn.net. Erledigt ist die Aufgabe, wenn Workspace-CSS in Firefox abgefangen und angewendet wird, ohne die code-server-Initialisierung oder IndexedDB zu beeinträchtigen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Is there an existing issue for this?
- I have searched the existing issues
OS/Web Information
- Web Browser: Firefox
firefox-151.0-2.fc42.x86_64
- Local OS: Fedora 42
- Remote OS: Fedora 42
- Remote Architecture: amd64
code-server --version: 4.105.1 811ec6c1d60add2eb92446161ca812828fdbaa7f with Code 1.105.1
Steps to Reproduce
Bug Description
When opening a Markdown preview in Firefox, local CSS files referenced in markdown.styles fail to load. The browser attempts to resolve the virtual vscode-resource.vscode-cdn.net domain via DNS instead of intercepting it via the Service Worker, resulting in NS_ERROR_UNKNOWN_HOST.
This issue is specific to Firefox and its implementation of Service Worker / iframe isolation (dFPI).
Looks close to coder/code-server#7892 … BUT!!! The same setup works for me perfectly in Chromium-based browsers.
So I hope some workaround (custom settings, hacks) exists that can make work it with Firefox.
Steps to Reproduce
-
Run
code-serverand access it via Firefox. -
In a workspace, create a file
test.cssin the root directory. -
Add the following to
.vscode/settings.json:{ "markdown.styles": ["test.css"] } -
Open any
.mdfile and open the Markdown Preview. -
Check the developer tools Network and Console panels.
Expected
The Service Worker intercepts the request for test.css and serves the local workspace file, applying the custom styles to the preview (as it does in Chromium).
Actual
The preview renders without the custom CSS. In the Developer Tools Console:
Could not load 'markdown.styles': test.css
In the Network panel, the request for test.css fails:
- Host:
vscode-remote+<punycode>.vscode-resource.vscode-cdn.net - Error:
NS_ERROR_UNKNOWN_HOST - DNS Resolution: System
Investigation Details
Based on HAR exports and console logs:
- The Service Worker is registered and active.
- Extension resources inside the webview (e.g.,
index.bundle.jsfrom extensions) are successfully intercepted and returnHTTP/2 200. - However, the dynamically injected
<link rel="stylesheet">formarkdown.stylesbypasses the Service Worker and goes directly to the network. - Setting
privacy.partition.serviceWorkerstofalseinabout:configcompletely breakscode-serverinitialization (Error: IndexedDB database 'vscode-web-db' is closed), so it cannot be used as a workaround.
It appears to be a race condition or a cross-origin iframe isolation bug specific to Firefox, where the Service Worker fails to control the CSS fetch request initiated by the Markdown preview webview.
Attachments
Please find the attached console.log and .har (har.zip) network export demonstrating the bypassed Service Worker.
console-export-2026-7-30_12-31-17.log
xn--80ach2ae.xn--80apqgfe.xn--p1ai_Archive [26-07-30 12-32-00].har.zip
Logs
Screenshot/Video
No response
Does this bug reproduce in native VS Code?
Yes, this is also broken in native VS Code
Does this bug reproduce in VS Code web?
Yes, this is also broken in VS Code web
Does this bug reproduce in GitHub Codespaces?
Yes, this is also broken in GitHub Codespaces
Are you accessing code-server over a secure context?
- I am using a secure context.
Notes
No response
- Vorherrschende Sprache
- TypeScript
- Sterne
- 79.4k
- Forks
- 6.9k
- Ø Merge
- 2 T. 13 Std.
- Gemergte PRs (30 T.)
- 39
Beitragsleitfaden
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus coder/code-server
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 92/100
coder/code-server#8017 · 2 Kommentare ·
-
Bump proxy-addr to 2.0.8 Offensecurity
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
coder/code-server#8013 · 4 Kommentare ·
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
coder/code-server#7976 · 2 Kommentare ·
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
coder/code-server#7962 · 3 Kommentare ·
-
bug needs-investigation
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
coder/code-server#7955 · 1 Kommentar ·
Alle Issues in coder/code-server
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
mksglu/context-mode#1200 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
jaegertracing/jaeger-ui#4506 ·
-
area:desktop area:ui bug platform:macos
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
anthropics/claude-code#96687 ·
-
good first issue
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 95/100
AOSSIE-Org/DebateAI#582 · 2 Kommentare ·