diff --git a/src/shared/rewriters/html.ts b/src/shared/rewriters/html.ts
index 7510f2a..7c3b044 100644
--- a/src/shared/rewriters/html.ts
+++ b/src/shared/rewriters/html.ts
@@ -38,7 +38,22 @@ function traverseParsedHtml(node, origin?: URL) {
/* url attributes */
for (const urlAttr of ["src", "href", "action", "formaction"]) {
- if (hasAttrib(node, urlAttr) && !isScramjetFile(node.attribs[urlAttr])) {
+ if (
+ hasAttrib(node, urlAttr) &&
+ !isScramjetFile(node.attribs[urlAttr]) &&
+ [
+ "iframe",
+ "embed",
+ "script",
+ "a",
+ "img",
+ "link",
+ "object",
+ "form",
+ "media",
+ "source",
+ ].includes(node.name)
+ ) {
const value = node.attribs[urlAttr];
node.attribs[`data-${urlAttr}`] = value;
node.attribs[urlAttr] = encodeUrl(value, origin);
@@ -76,7 +91,7 @@ function traverseParsedHtml(node, origin?: URL) {
node.children[0].data = rewriteCss(node.children[0].data, origin);
if (
node.name === "script" &&
- /(application|text)\/javascript|importmap|undefined/.test(
+ /(application|text)\/javascript|module|importmap|undefined/.test(
node.attribs.type
) &&
node.children[0] !== undefined