Proposals regarding <main> element

Hi all,

How have you been?

Previously I proposed making <main> element a sectioning element for a
better and clearer document outline. In the proposal, I gave an example to
demonstrate the HTML codes. (
http://lists.w3.org/Archives/Public/public-whatwg-archive/2012Oct/0154.html)

And today I saw a HTML5 template called HTML5 Bones (http://html5bones.com/).
In the index.html of the template, I noticed that <aside
role="complementary" /> is placed within <section role="main" />. I then
realized that the template is right, and the example in my above mentioned
proposal is wrong.

Complementary Content belongs to Main Content, so it should be placed
within Main Content. If you place Complementary Content outside of Main
Content, you are actually indicating that they have no association. Thank
the template for reminding me of this important thing.

So please allow me to correct my example. The ideal HTML code and document
outline should be as follows:

<!DOCTYPE html>
<title>blablabla</title>
<header>
    <h1>Branding</h1>
    <nav>
        <h1>Navigation</h1>
        blablabla
    </nav>
    <aside>
        <h1>Search</h1>
        blablabla
    </aside>
</header>
<main role="main">
    <h1>Main Content</h1>
    <section>
        <h1>Welcome</h1>
        blablabla
    </section>
    <section>
        <h1>Brief Intro</h1>
        blablabla
    </section>
    <aside role="complementary">
        <h1>Complementary Content</h1>
        <article>
            <h1>Latest News</h1>
            blablabla
        </article>
        <article>
            <h1>Recent Comments</h1>
            blablabla
        </article>
    </aside>
</main>
<footer>
    blablabla
</footer>

1. Branding
        1. Navigation
        2. Search
        3. Main Content
                1. Welcome
                2. Brief Intro
                3. Complementary Content
                        1. Latest News
                        2. Recent Comments


Besides, after some reconsiderations, I would still propose that <main> can
be used multiple times in a document so that we have a reasonable element
to wrap the main content of a blog post. And yes, the document outline will
become *more detailed* because of <main> being sectioning element. That
will be okay imo. Another reason for this proposal is that because the main
content of a document has its corresponding element, it's unfair and makes
no sense that the main content of a blog post doesn't. The following is an
example.

<article class="blog-post">
    <header>
        blablabla
    </header>
    <main>
        <h1>Main Content</h1>
        <p />
        <p />
        <p />
        <figure />
        <p />
        <ul />
        <p />
        <p />
        <table />
        <p />
        <p />
    </main>
    <footer>
        blablabla
    <footer>
</article>


To sum up, the proposals are:

1. Making <main> a sectioning element for a better and clearer document
outline. If unfortunately it were not accepted, personally I guess I will
continue to use <section role="main" /> at least it yields an ideal
document outline.

2. Making <main> being usable multiple times in a document, so we also have
a reasonable element to wrap the main content of a blog post.


Any suggestion or advise will be greatly appreciated. Thanks.


Regards,
Ian Yang

Received on Saturday, 22 December 2012 22:44:26 UTC