diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2014-09-27 09:02:19 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2014-09-27 09:02:19 +0000 |
commit | cbb36f69d85e6b491d5b45327719e0cf321ebec2 (patch) | |
tree | 0edb7c41c4d9088e2414889dc7936240b44f77f6 | |
parent | 7f631c926eaa8069d1c48df8e5c6d375f83e1188 (diff) | |
download | mandoc-cbb36f69d85e6b491d5b45327719e0cf321ebec2.tar.gz |
First, add space for default styling for HTML5 (non-fragment) output.
This uses a <style /> block right before the <link /> for the stylesheet.
Use this to kick out hardcoded header and footer table widths.
-rw-r--r-- | html.c | 6 | ||||
-rw-r--r-- | html.h | 1 | ||||
-rw-r--r-- | man_html.c | 10 | ||||
-rw-r--r-- | mdoc_html.c | 10 |
4 files changed, 15 insertions, 12 deletions
@@ -74,6 +74,7 @@ static const struct htmldata htmltags[TAG_MAX] = { {"i", 0 }, /* TAG_I */ {"code", 0 }, /* TAG_CODE */ {"small", 0 }, /* TAG_SMALL */ + {"style", HTML_CLRLINE}, /* TAG_STYLE */ }; static const char *const htmlattrs[ATTR_MAX] = { @@ -193,11 +194,16 @@ void print_gen_head(struct html *h) { struct htmlpair tag[4]; + struct tag *t; tag[0].key = ATTR_CHARSET; tag[0].val = "utf-8"; print_otag(h, TAG_META, 1, tag); + t = print_otag(h, TAG_STYLE, 0, NULL); + print_text(h, "table.head, table.foot { width: 100%; }\n"); + print_tagq(h, t); + if (h->style) { tag[0].key = ATTR_REL; tag[0].val = "stylesheet"; @@ -50,6 +50,7 @@ enum htmltag { TAG_I, TAG_CODE, TAG_SMALL, + TAG_STYLE, TAG_MAX }; @@ -299,7 +299,7 @@ a2width(const struct man_node *n, struct roffsu *su) static void man_root_pre(MAN_ARGS) { - struct htmlpair tag[3]; + struct htmlpair tag[2]; struct tag *t, *tt; char *title; @@ -309,8 +309,7 @@ man_root_pre(MAN_ARGS) PAIR_SUMMARY_INIT(&tag[0], "Document Header"); PAIR_CLASS_INIT(&tag[1], "head"); - PAIR_INIT(&tag[2], ATTR_WIDTH, "100%"); - t = print_otag(h, TAG_TABLE, 3, tag); + t = print_otag(h, TAG_TABLE, 2, tag); PAIR_INIT(&tag[0], ATTR_WIDTH, "30%"); print_otag(h, TAG_COL, 1, tag); print_otag(h, TAG_COL, 1, tag); @@ -343,13 +342,12 @@ man_root_pre(MAN_ARGS) static void man_root_post(MAN_ARGS) { - struct htmlpair tag[3]; + struct htmlpair tag[2]; struct tag *t, *tt; PAIR_SUMMARY_INIT(&tag[0], "Document Footer"); PAIR_CLASS_INIT(&tag[1], "foot"); - PAIR_INIT(&tag[2], ATTR_WIDTH, "100%"); - t = print_otag(h, TAG_TABLE, 3, tag); + t = print_otag(h, TAG_TABLE, 2, tag); PAIR_INIT(&tag[0], ATTR_WIDTH, "50%"); print_otag(h, TAG_COL, 1, tag); print_otag(h, TAG_COL, 1, tag); diff --git a/mdoc_html.c b/mdoc_html.c index 504c33fc..ff2b140e 100644 --- a/mdoc_html.c +++ b/mdoc_html.c @@ -484,13 +484,12 @@ print_mdoc_node(MDOC_ARGS) static void mdoc_root_post(MDOC_ARGS) { - struct htmlpair tag[3]; + struct htmlpair tag[2]; struct tag *t, *tt; PAIR_SUMMARY_INIT(&tag[0], "Document Footer"); PAIR_CLASS_INIT(&tag[1], "foot"); - PAIR_INIT(&tag[2], ATTR_WIDTH, "100%"); - t = print_otag(h, TAG_TABLE, 3, tag); + t = print_otag(h, TAG_TABLE, 2, tag); PAIR_INIT(&tag[0], ATTR_WIDTH, "50%"); print_otag(h, TAG_COL, 1, tag); print_otag(h, TAG_COL, 1, tag); @@ -514,7 +513,7 @@ mdoc_root_post(MDOC_ARGS) static int mdoc_root_pre(MDOC_ARGS) { - struct htmlpair tag[3]; + struct htmlpair tag[2]; struct tag *t, *tt; char *volume, *title; @@ -532,8 +531,7 @@ mdoc_root_pre(MDOC_ARGS) PAIR_SUMMARY_INIT(&tag[0], "Document Header"); PAIR_CLASS_INIT(&tag[1], "head"); - PAIR_INIT(&tag[2], ATTR_WIDTH, "100%"); - t = print_otag(h, TAG_TABLE, 3, tag); + t = print_otag(h, TAG_TABLE, 2, tag); PAIR_INIT(&tag[0], ATTR_WIDTH, "30%"); print_otag(h, TAG_COL, 1, tag); print_otag(h, TAG_COL, 1, tag); |