- for (i = 0; i < sz; i++) {
- printf(" %s=\"", htmlattrs[p[i].key]);
- assert(p->val);
- (void)print_encode(h, p[i].val, 1);
- putchar('\"');
+ for (i = 0; i < sz; i++)
+ print_attr(h, htmlattrs[p[i].key], p[i].val);
+
+ /* Add non-overridable attributes. */
+
+ if (TAG_HTML == tag && HTML_XHTML_1_0_STRICT == h->type) {
+ print_attr(h, "xmlns", "http://www.w3.org/1999/xhtml");
+ print_attr(h, "xml:lang", "en");
+ print_attr(h, "lang", "en");