aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorsmcv <smcv@web>2014-10-05 09:06:20 -0400
committeradmin <admin@branchable.com>2014-10-05 09:06:20 -0400
commitcfbbbd65b8f091bbbc13387b347140136e137881 (patch)
tree40a0c9eb9c37d89100429ea7908db6c2a3d49697 /doc
parentc2b2794106a967f44593bb375031f839cb6183d4 (diff)
downloadikiwiki-cfbbbd65b8f091bbbc13387b347140136e137881.tar
ikiwiki-cfbbbd65b8f091bbbc13387b347140136e137881.tar.gz
new
Diffstat (limited to 'doc')
-rw-r--r--doc/todo/generate_HTML5_by_default.mdwn33
1 files changed, 33 insertions, 0 deletions
diff --git a/doc/todo/generate_HTML5_by_default.mdwn b/doc/todo/generate_HTML5_by_default.mdwn
new file mode 100644
index 000000000..3adce8c90
--- /dev/null
+++ b/doc/todo/generate_HTML5_by_default.mdwn
@@ -0,0 +1,33 @@
+The `html5` option was added in 2010 and marked as "not experimental" in 2011
+but is not the default.
+
+According to <http://caniuse.com/#feat=html5semantic>, current versions of
+all recent versions of all major browsers - even IE - support the HTML5
+semantic elements (`<section>` etc.), except for `<main>` which IkiWiki
+doesn't use anyway. With that being the case, I'm not sure whether we gain
+anything from not generating HTML5 (or "HTML" as it's now labelled) all the time.
+
+In particular, non-HTML5 mode uses `<!DOCTYPE html PUBLIC
+"-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">`
+which doesn't allow newer markup like the `role` attribute, so we can't close
+[[todo/add_aria_landmarks_to_make_ikiwiki_websites_more_accessible]] while
+remaining XHTML 1.0 Strict. The recommended pseudo-doctype for HTML5, and for
+HTML with ARIA markup, is `<!DOCTYPE html>`.
+
+(I do think we should continue to use `<xml-compatible-tags />` and output
+well-formed XML so people who want to do XSLT tricks with IkiWiki's output
+can do so, though.)
+
+In practice, real browsers have never actually implemented a strict XHTML mode:
+they've always parsed `text/html` as "tag soup", because they need a tag-soup
+parser anyway, and nobody wants to maintain two parsers.
+
+Options include:
+
+* set html5 to 1 by default but retain the dual-mode templates
+* remove the option and always behave as if it had been 1, simplifying
+ the templates
+
+Thoughts?
+
+--[[smcv]]