On Saturday, November 23, 2013, Mariusz Wojcik wrote:

>     <li>[Home](/)</li>
>     <li>[About Me](/about-me.html)</li>
>     <li>[Projects](/projects.html)</li>
>
> creates
>
>     <p><li><a href="/">Home</a></li>
>     <li><a href="/about-me.html">About Me</a></li>
>     <li><a href="/projects.html">Projects</a></li></p>
>
> Is this a bug or a feature? I think it shouldn't be that way because the
> <p>
> Tags around `li`s are illegal.
>

As the docs [1] state: “Markdown is smart enough not to add extra
(unwanted) `<p>` tags around HTML block-level tags.” The key there is
“block-level tags” which `<li>`s are not ( go ahead and check the HTML spec
on that). If you want to create raw HTML lists, then you need to wrap them
in the appropriate block-level tag yourself.

This is a case of garbage in - garbage out. When you're using raw HTML, you
need to use valid HTML. Markdown will not fix your invalid HTML for you.
So, in your case, a `<li>` not in a `<ol>` or `<ul>` in not valid HTML.
Therefore markdown doesn't fix it to make it valid. Markdown's
understanding of HTML is way to limited for that.

Hope that explains things for you.

[1]: http://daringfireball.net/projects/markdown/syntax#html


-- 
Waylan Limberg
_______________________________________________
Markdown-Discuss mailing list
[email protected]
http://six.pairlist.net/mailman/listinfo/markdown-discuss

Reply via email to