Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Choosing the right structural element

From: HTML5: Structure, Syntax, and Semantics

Video: Choosing the right structural element

Deciding which structural element to use for content seems to be one of the biggest questions surrounding HTML5. One of the reasons that this process is so confusing is that often which element you'll use to describe content is really a judgment call. The elements do have clearly defined roles, but often those roles overlap, and cases could be made for using more than one element. In this movie, I want to take a look at the decision-making process for choosing the right structural semantic element for your page content. I'm going to take you through the process that I use for deciding which element to use.

Choosing the right structural element

Deciding which structural element to use for content seems to be one of the biggest questions surrounding HTML5. One of the reasons that this process is so confusing is that often which element you'll use to describe content is really a judgment call. The elements do have clearly defined roles, but often those roles overlap, and cases could be made for using more than one element. In this movie, I want to take a look at the decision-making process for choosing the right structural semantic element for your page content. I'm going to take you through the process that I use for deciding which element to use.

Just keep in mind that these are my own rules for selecting elements. The more you use these elements, the more clearly defined your own selection process will be. So, the first thing I do is I ask myself a question: should the element start a new section? Now if that answer is no, the next question I ask is, is it introductory content? Now, if it is, I'm going to go ahead and use a header element. If the answer is no, the next question I ask myself is, does the content contain information about the author, related links, or some type of legal information? If that's the case, then I'll be using a footer element.

Now, keep in mind, footer elements don't have to be at the bottom of the page, and they don't have to contain just the content that you've listed here. Most of the time, kind of understand what the footer of a section is, but it's worth stating those questions aloud to yourself so that you're being consistent with it. Now if the answer to this question is no, then the next question I ask myself is, is the content being grouped together simply for stylistic reasons or to extend its meaning further through an ID or class attribute? And if the answer to that is yes, then I'm going to use a div tag.

If I'm just grouping it together, for example, for programmatically making a tab out of it with jQuery, or if I just need a certain section to have a background color but semantically it doesn't need to be grouped together for any one particular reason, then a div tag works really, really well for that. Now, if the answer to this question is also no, then I'm saying okay, this is not sectioning content. I need to find the appropriate grouping content element. So obviously, I was wrong about it being sectioning content in the first place, and it's time to use something else, for example, a blockquote tag or something of that nature.

Now let's go back to our original question: what if the answer of should it start a new section is yes? Okay, so the first thing that I ask myself is, is it a section of major navigation? If it is, then obviously I'm going to use the nav element. Now remember, the nav element isn't used for every single grouping of links on my page, only for major navigation or navigation that I want to make sure is exposed to assistive technologies. Now, if the answer to this question is no, I have to pose another question to myself, and that is, is the content self-contained, and could it survive independently of the document? If the answer to that is yes, then I'm going to be using an article element.

Now, keep in mind the important part of this to me is the self-contained and independent nature of it, meaning can I syndicate this? Not necessarily am I going to syndicate it? But could I syndicate it, could it stand on its own, could it be republished? And if the answer to that is yes, probably I'm going to be using an article element for that. Now, if the answer to that is no, then I'm going to ask myself is the content only tangentially related to the content around it? So is it not germane to all the content surrounding it, but just sort of related to it? Now, if the answer to that is yes, I'll be using an aside element.

If the answer to that is no, then I'll ask myself one last question which is, is the content a thematic grouping, possibly containing content that could be arranged in a footer and a header? Now, I don't actually ask myself something in those terms, but I am asking myself, okay, does it belong together? Is this something that really needs to be organized in a sectioning element? Pay attention to that part, organized; does it need to be grouped within its own sectioning element so that it has its own hierarchy? If that's the case, then I'm going to be using a sectioning element for that. Now, if it's not the case, if it doesn't need to be grouped together, if the answer for that is no, then all I really need to do is use a heading to go ahead and create that implicit section if it doesn't need that internal structure.

So, there you have it! That is my element-selection process in a nutshell. Now of course, sometimes it's really obvious as to which element you're going to use, but in other cases, the content could be a little bit more ambiguous. In those instances, it's really good to have a selection process of your own like this one, which is going to lead you to using these semantic tags consistently. Your process may differ from mine. I know several web designers that I have an amazing amount of respect for that use the article element far more frequently than I do. So, the barrier for using that is lower for those guys. In the end, what matters is that your content is described in the most accurate semantic terms.

And, and this is probably more importantly, that you're using the elements consistently across your site or across your application.

Show transcript

This video is part of

Image for HTML5: Structure, Syntax, and Semantics
HTML5: Structure, Syntax, and Semantics

46 video lessons · 35984 viewers

James Williamson
Author

 
Expand all | Collapse all
  1. 2m 20s
    1. Welcome
      48s
    2. Using the exercise files
      1m 32s
  2. 18m 41s
    1. A brief overview of HTML5
      3m 57s
    2. What's in the HTML5 specification?
      8m 17s
    3. Why do we need new structural elements?
      6m 27s
  3. 50m 33s
    1. Defining HTML5 documents
      5m 5s
    2. HTML5 syntax
      9m 14s
    3. The header element
      5m 22s
    4. The nav element
      4m 55s
    5. The section element
      4m 51s
    6. The article element
      4m 48s
    7. The aside element
      4m 13s
    8. The footer element
      4m 17s
    9. Content model overview
      7m 48s
  4. 35m 28s
    1. Understanding the outline algorithm
      3m 17s
    2. Creating document sections
      8m 25s
    3. Using headings properly
      9m 1s
    4. Using hgroup to override sectioning
      4m 17s
    5. Properly nesting structure
      7m 17s
    6. Sectioning roots
      3m 11s
  5. 58m 30s
    1. Organizing content
      4m 41s
    2. Planning document structure
      5m 47s
    3. Choosing the right structural element
      4m 43s
    4. Checking document outlines
      5m 27s
    5. Coding initial page structure
      5m 28s
    6. Using class and ID attributes
      5m 31s
    7. Structuring headers
      13m 13s
    8. Building navigation
      7m 1s
    9. Structuring footers
      6m 39s
  6. 1h 27m
    1. Working with figure and figcaption
      7m 12s
    2. Grouping content with asides
      3m 46s
    3. Using divs in HTML5
      5m 0s
    4. Working with lists in HTML5
      7m 10s
    5. The return of bold and italic
      5m 52s
    6. Citing works semantically
      6m 32s
    7. Using the address element
      5m 24s
    8. Using the small element
      4m 24s
    9. Using the mark element
      5m 16s
    10. Working with date and time
      11m 55s
    11. Creating block-level links
      8m 53s
    12. Understanding link relationships
      9m 28s
    13. Defining link relationships
      6m 23s
  7. 17m 22s
    1. Current browser support
      7m 38s
    2. Ensuring block-level display
      4m 3s
    3. Adding support for elements in older browsers
      5m 41s
  8. 3m 46s
    1. Additional Resources
      3m 46s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Join now "Already a member? Log in

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed HTML5: Structure, Syntax, and Semantics.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.