]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/bugs/html5_support.mdwn
Add placeholder text in search form (in html5 mode only).
[git.ikiwiki.info.git] / doc / bugs / html5_support.mdwn
index 5d2a413036f99a297a24a41cec8f00f9c9a48820..5530b29db13ebfac1e376a606c2370b846696a5a 100644 (file)
@@ -20,13 +20,14 @@ HTML5](http://www.w3.org/TR/html5-diff/).
 >    What has been done so far, can be extended. Basically works 
 >    in browsers, if you don't care about standards. A good prerequisite
 >    for anything else, anyway.
-> 2. Switch to html5 in eg, ikiwiki 4; users have to deal with
+> 2. Have both a html5 and a xhtml mode, allow user to select.
+> 3. Switch to html5 in eg, ikiwiki 4; users have to deal with
 >    any custom markup on their pages/templates that breaks then.
-> 3. Have both a html5 and a xhtml mode, allow user to select.
->
-> The third option seems fairly tractable from what I see here and in 
+> 
+> The second option seems fairly tractable from what I see here and in 
 > your branch. You made only relatively minor changes to 10 templates.
-> It would probably not be too dreadful to put them in ifdefs.
+> It would probably not be too dreadful to put them in ifdefs. I've made a
+> small start at doing that.
 > 
 > Some of your changes are obvious, like using the new `time` and
 > and `article` elements. Others less so, and I'm particularly
@@ -59,16 +60,36 @@ HTML5](http://www.w3.org/TR/html5-diff/).
 >   tag, but something should still be done to replace it.
 > 
 > (BTW, it would be helpful if you could re-merge master into your branch
-> as it is a bit diverged now.) --[[Joey]] 
+> as it is a bit diverged now.) 
+> 
+> Other ideas:
+> 
+> * Use aside for the sidebar? Or for the [[templates/note]] template?
+> * Use nav for the actionbar
+> * Use details tag instead of the javascript in the toggle plugin. 
+>   (Need to wait on browser support probably.)
+> 
+> --[[Joey]] 
 
 # htmlscrubber.pm needs to not scrub new HTML5 elements
 
 * [new elements](http://www.w3.org/TR/html5-diff/#new-elements)
 
-> Most of these can be supported trivially, since they are just semantic
-> markup. Make a list of these, and their attributes (and which attributes
-> can contain urls or other javascript injection mechanisms), and I can add
-> them. Others, like `embed`, and `canvas` are *scary*. --[[Joey]]
+> Many added now.
+>
+> Things I left out, too hard to understand today:
+> Attributes contenteditable,
+> data-\*, draggable, role, aria-\*.
+> Tags command, keygen, output.
+> 
+> Clearly unsafe: embed.
+> 
+> Apparently cannot be used w/o javascript: menu.
+> 
+> I have not added the new `ping` attribute, because parsing a
+> space-separeated list of urls to avoid javascript injection is annoying, 
+> and the attribute seems generally dubious.
+>  --[[Joey]] 
 
 # HTML5 Validation and t/html.t
 
@@ -108,3 +129,10 @@ As a workaround:
 
 > Also, the [[plugins/relativedate]] plugin needs to be updated to 
 > support relatatizing the contents of time elements. --[[Joey]] 
+
+> Done and done; in html5 mode it uses the time tag, and even 
+> adds pubdate when displaying ctimes. --[[Joey]]
+
+## tidy plugin
+
+Will reformat html5 to html4.