@@ -303,19 +303,19 @@ impl VdomInnerExclusive {
303303 listeners: new_listeners,
304304 attributes: new_attributes,
305305 children: new_children,
306− namespace: _,
306+ namespace: new_namespace,
307307 }),
308308 Node::Element(ElementNode {
309309 tag_name: old_tag_name,
310310 listeners: old_listeners,
311311 attributes: old_attributes,
312312 children: old_children,
313− namespace: _,
313+ namespace: old_namespace,
314314 }),
315315 ) => {
316316 debug!(" updating an element");
317− if new_tag_name != old_tag_name {
318− debug!(" different tag names; creating new element and replacing old element");
317+ if new_tag_name != old_tag_name || new_namespace != old_namespace {
318+ debug!(" different tag names or namespaces; creating new element and replacing old element");
319319 self.create(registry, new);
320320 self.change_list.emit_replace_with();
321321 return;