New Semantic Elements – Beginners Guide
New Semantic Elements – Beginners Guide.
This tutorial is connected from the second HTML5 tutorial the “First HTML5 Website“.
On the last tutorial, we left off by creating a really basic HTML5 document.
Now, we are going to start filling your first HTML5 document with the new semantic elements. The header, section, footer and aside tags will be discussed on this tutorial.
First, open your index.html file on your Sublime Text Application.
Header tags:
Header tags are like div tags which we will wrap the div tag from the body content of our recent HTML5 document.
<div>
<p>From HTML,</p>
</div>[html5]
<div>
<h1>Hello!</h1>
</div>
[/html5]To <header></header>,
[html5]
<header>
<h1>Hello!</h1>
</header>
[/html5]Header tags will let the browser know that the content with the header tag is the header of your HTML5 document.
Next one, is the section tag. Section is like also a div tag. It groups the content together to tell that this content is related, saying that this content is the section of your website. Add this line of code next to your closing header tag.
[html5]
<section class="main-content">
<p>
Welcome to www.itsourcecode.com. We offer free source code and different programming languages tutorials. Absolutely free!
</p>
</section>
[/html5]Try to run your system to see if it works. See the sample image below for our expected results.

Next, we are going to use the footer tag. Footer tag is the same as the header tag.
Also, the good news are that your browser knows what content is in your footer and this will allow you to prioritize an information whether it is for your Search Engine Optimization or accessibility. Let’s add some details on our footer, insert this line of code under your section end tag.
[html5]
<footer>
<ul>
<li>www.itsourcecode.com</li>
<li>Contact Details:</li>
<li>www.facebook.com/kirk.lavapiez</li>
<li>[email protected]</li>
<li>+639771069640 (Globe)</li>
</ul>
</footer>
[/html5]Footer tag means not only the footer of your page but for the whole HTML5 content.
Here’s our HTML5 website results so far,

Lastly, we are going to use the aside tag. Aside tag is not really your main content but it is more of a secondary content to your main content.
Add this code between your section tag and footer tag.
[html5]
<aside>
<p>
You are gaining grounds to become an HTML5 Programmer! Congratulations!
</p>
</aside>
[/html5]Run again your HTML5 document and you can see that your content are being seperated by header, section, aside and footer tags.

Note, it does let your browser know that this content isn’t as important to your stuff in your main content or other places in your website.
Success! You have successfully learned about the header, section, aside and footer tags. This tags are purely semantic.
Before, every one of these tags are divs and you could not guess what are those contents are but now through HTML5 you can distinguish your content because of these new semantic tags.
On our next tutorial, we will be discussing about Creating Styling Javascript: HTML5 Shiv. Stay tuned webbies!
For questions, concerns, or assistance with thesis/capstone creation and documentation, you can contact us.
To download the sample HTML5 document, click here.
Frequently Asked Questions
How does this PHP project work?
Built with vanilla PHP (no framework) and MySQL backend. Standard structure: form HTML, PHP script handlers, MySQL via PDO or mysqli, sessions for auth, Bootstrap for responsive layout. Ready to extend for BSIT capstone scope.
What PHP and MySQL versions does this project require?
Most projects in this batch run on PHP 7.4 to PHP 8.2 with MySQL 5.7+ or MariaDB 10+. A few older projects need PHP 5.6 (deprecated, use XAMPP 7.x). To run: install XAMPP / WAMP / Laragon, extract project to htdocs, import the included .sql file via phpMyAdmin, edit the connection file (usually config.php or db_connect.php) with your DB credentials, browse to the project URL in your browser.
How do I set up the database for this PHP project?
Open phpMyAdmin (http://localhost/phpmyadmin/ on XAMPP), create a new empty database with the name specified in the project’s config.php. Click the Import tab, choose the included .sql file, click Go. Then edit config.php (or includes/connection.php) with: ‘localhost’, your MySQL username (usually ‘root’), your MySQL password (usually blank for XAMPP), and the database name.
Can I use this PHP project for a BSIT capstone or thesis?
Yes, but extend it. A bare CRUD app is too narrow for full capstone scope. Add: user roles via session checks, reports/dashboards (Chart.js + AJAX), PDF exports (TCPDF library), email notifications (PHPMailer), real domain extension (analytics, audit log, multi-branch support). Pair with Chapter 1-5 documentation matching your panel’s rubric.
Why am I getting ‘connection error’ or ‘undefined function mysqli_connect’?
Three common PHP issues: (1) Connection error: Apache + MySQL services not running in XAMPP control panel, OR database name in config.php does not match what you created in phpMyAdmin. (2) ‘undefined function mysqli_connect’: MySQL extension not enabled, in php.ini uncomment extension=mysqli (then restart Apache). (3) ‘No such file or directory’: MySQL socket path wrong, use 127.0.0.1 instead of localhost in the connection string.
Where can I find more PHP projects with source code?
Browse the PHP Projects hub for the full library (300+ vanilla PHP systems). For modern PHP MVC alternatives see Laravel Projects (74 systems) or CodeIgniter Projects (32 systems). For BSIT-focused capstone idea lists see 150 Best Capstone Project Ideas.
Related PHP Projects
- Html5 Shiv Beginners Guide
- Html5 Time Element Beginners Guide
- Html5 Boilerplate Beginners Guide
- Html5 Introduction Beginners Guide
- First Html5 Website Beginners Guide
- Html5 Video Tag Beginners Guide
