aboutsummaryrefslogtreecommitdiff
path: root/doc/todo/html.mdwn
blob: 9f5dc836e67bfc701e6e22a95c7f5a97d0047ece (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
Create some nice stylesheets. Make RecentChanges use table for
formatting, and images to indicate web vs svn commits and to link to diffs.

All of this should be doable w/o touching a single line of code, just
editing the [[templates]] and/or editing [[style.css]] BTW.

## html validation

  * Doctype is XHTML 1.0 Strict
    	
	One consideration of course is that regular users might embed html
	that uses deprecated presentational elements like <center>. At
        least firefox seems to handle that mixture ok. 
	--[[Joey]]

  * [ [inlinepage] ] gets wrapped in <p>...</p> which has a high chance of invalidating the page.

  	Since markdown does this, the only way I can think to fix it is to
	make the inlined page text start with </p> and end with
	<p>. Ugly, and of course there could be problems with
	markdown enclosing it in other spanning tags in some cases.
	I've implemented this hack now. :-/ --[[Joey]]

	I used this 'hack' myself, but yesterday I came up with a better idea:  
	    <div class="inlinepage">  
	    [ [inlinepage] ]  
	    </div>  
	This prevents markdown enclosing and even adds a useful css identifier. Problem is that this should be added to every page and not in the template(s). --[[JeroenSchot]]

	I can make ikiwiki add that around every inlined page easily
	enough. However, where is it documented? Came up dry on google.
	--[[Joey]]

	From <http://daringfireball.net/projects/markdown/syntax#html>:
	> The only restrictions are that block-level HTML elements � e.g. &lt;div&gt;, &lt;table&gt;, &lt;pre&gt;, &lt;p&gt;, etc. � must be separated from surrounding content by blank lines, and the start and end tags of the block should not be indented with tabs or spaces. Markdown is smart enough not to add extra (unwanted) &lt;p&gt; tags around HTML block-level tags. [snip]
	> Note that Markdown formatting syntax is not processed within block-level HTML tags. E.g., you can�t use Markdown-style \*emphasis\* inside an HTML block.

	Because [ [inlinepage] ] isn't separated by a blank line it gets treated as a block-level element. Hmm, will this stop all formatting, including *'s to em-tags? --[[JeroenSchot]]

    Ah didn't realize you meant it fixed it at the markdown level. I'll
    think about making [[postprocessordirective]]s into
    preprocessordirectives instead, then I could use that fix (but I'm not
    sure how feasible it is to do that). --[[Joey]]

This page is now valid.
Test: [validate this page](http://validator.w3.org/check?url=referer)