aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/html.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2018-05-09 00:46:10 +0000
committerIngo Schwarze <schwarze@openbsd.org>2018-05-09 00:46:10 +0000
commit8146f18c9d4d17026c0a4ae5ed85ea5907bf38fc (patch)
tree5b53a53e71f76bae69a7632586ac545c8d80b651 /html.c
parent35d4aaed89e7337b61f0213b253b9bee370ad2c3 (diff)
downloadmandoc-8146f18c9d4d17026c0a4ae5ed85ea5907bf38fc.tar.gz
mandoc-8146f18c9d4d17026c0a4ae5ed85ea5907bf38fc.tar.zst
mandoc-8146f18c9d4d17026c0a4ae5ed85ea5907bf38fc.zip
Fix a long-standing issue:
Some macros (Nd, Oo) can contain blocks but rendered as elements that can only contain phrasing content, resulting in invalid HTML nesting. Switch them to <div>. Also move the related "display: inline" style from the HTML to the CSS. Reminded during a conversation with John Gardner.
Diffstat (limited to 'html.c')
-rw-r--r--html.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/html.c b/html.c
index e57322b4..33cb67c4 100644
--- a/html.c
+++ b/html.c
@@ -1,4 +1,4 @@
-/* $Id: html.c,v 1.224 2018/05/08 21:42:34 schwarze Exp $ */
+/* $Id: html.c,v 1.225 2018/05/09 00:46:10 schwarze Exp $ */
/*
* Copyright (c) 2008-2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2011-2015, 2017, 2018 Ingo Schwarze <schwarze@openbsd.org>
@@ -59,6 +59,7 @@ static const struct htmldata htmltags[TAG_MAX] = {
{"meta", HTML_NOSTACK | HTML_AUTOCLOSE | HTML_NLALL},
{"title", HTML_NLAROUND},
{"div", HTML_NLAROUND},
+ {"div", 0},
{"h1", HTML_NLAROUND},
{"h2", HTML_NLAROUND},
{"span", 0},
@@ -187,6 +188,8 @@ print_gen_head(struct html *h)
print_endline(h);
print_text(h, "div.Pp { margin: 1ex 0ex; }");
print_endline(h);
+ print_text(h, "div.Nd, div.Bf, div.Op { display: inline; }");
+ print_endline(h);
print_text(h, "dl.Bl-diag ");
print_byte(h, '>');
print_text(h, " dt { font-weight: bold; }");