{"id":10587,"date":"2011-10-04T21:02:52","date_gmt":"2011-10-04T13:02:52","guid":{"rendered":"https:\/\/www.hongkiat.com\/blog\/?p=10587"},"modified":"2025-04-04T00:43:20","modified_gmt":"2025-04-03T16:43:20","slug":"building-html5-css-webpages","status":"publish","type":"post","link":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/","title":{"rendered":"Beginner&#8217;s Guide to Building HTML5\/CSS3 Webpages"},"content":{"rendered":"<p>HTML5 and CSS3 have swept the web by storm.. Before them there have been many altered semantics in the way web designers are expected to create  web pages, and with their arrival come a slew of awesome supports such as alternative media, XML-style tags, and progressive input attributes for web designers to achieve dreamy features like animation.<\/p>\n<p>Though most developers seem to showcase potential yet complicated <a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/15-html5-experiments\/\" rel=\"noopener noreferrer\">demos<\/a>, HTML5\/CSS3 are not really rocket science, and I\u2019ll be walking you through the relaxing process to build a standard HTML5\/CSS3 web page with comprehensive yet in-depth explanation and tada!<\/p>\n<p>Bonuses like learning resources and free HTML5 templates are available for you, so take this chance to kick-start your HTML5 journey!<\/p>\n<h2>Changes between HTML4 and HTML5<\/h2>\n<p>You may be wondering why it\u2019s even important to switch into HTML5. There are a myriad of reasons, but mostly because you\u2019ll be <strong>working with the global Internet standards<\/strong> like every other designer.<\/p>\n<p>In this way you\u2019ll find more support online and your <strong>websites will render properly in modern browsers<\/strong> which are constantly improved.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg\" alt=\"html5 semantics\" width=\"500\" height=\"373\"><\/figure>\n<p>Comparison between HTML4 and HTML5 is difficult to spot at surface level. From viewing the <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/www.w3.org\/html\/wg\/html5\/\">new HTML5 draft<\/a> you can see featured elements and corrected error handling procedures. Browser developers have specifically enjoyed the new specifications for rendering default web pages.<\/p>\n<p>What\u2019s more from HTML5 is the conversion of our modern web browser. With these new specifications the web as a whole is now viewed as an <strong>application platform<\/strong> for HTML (especially HTML5), CSS, and JavaScript to be built upon.<\/p>\n<p>Also, this system elegantly <strong>creates harmony between web designers and developers<\/strong> by setting common standards which all browsers should follow.<\/p>\n<p>Additionally many elements have been created to <strong>represent new-age digital media<\/strong>. These include <code>&lt;videogt;<\/code> and <code>&lt;audiogt;<\/code> which are huge for multimedia support. In some browsers you may complete form validation directly in HTML.<\/p>\n<p>Granted there is still a heavy need for jQuery, since there are many software developers who have yet to recognize the features. If you\u2019d like a list of tags check this <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/www.w3schools.com\/html\/html5_new_elements.asp\">W3Schools table<\/a> to learn more about them.<\/p>\n<h2>Bare HTML5 Skeleton<\/h2>\n<p>I find the easiest way to understand any topic is to <strong>dive right into it<\/strong>. So I\u2019ll be constructing a very basic HTML5 skeleton template for a web page.<\/p>\n<p>I included a few of the newer elements, which I hope to categorize a bit later.<\/p>\n<pre>&lt;!doctype htmlgt;\r\n&lt;head&gt;\r\n  &lt;meta charset=\"utf-8\"gt;\r\n  &lt;titlegt;Our First HTML5 Page&lt;\/titlegt;\r\n  &lt;meta name=\"description\" content=\"Welcome to my basic template.\"gt;\r\n  &lt;link rel=\"stylesheet\" href=\"css\/style.css?v=1\"gt;\r\n&lt;\/headgt;\r\n\r\n&lt;bodygt;\r\n    &lt;div id=\"wrapper\"gt;\r\n    \t&lt;headergt;\r\n            &lt;h1gt;Welcome, one and all!&lt;\/h1gt;\r\n            \r\n            &lt;navgt;\r\n            \t&lt;ulgt;\r\n                    &lt;ligt;&lt;a href=\"#\"gt;Home&lt;\/agt;&lt;\/ligt;\r\n                    &lt;ligt;&lt;a href=\"#\"gt;About us&lt;\/agt;&lt;\/ligt;\r\n                    &lt;ligt;&lt;a href=\"#\"gt;Contacts&lt;\/agt;&lt;\/ligt;\r\n                &lt;\/ulgt;\r\n            &lt;\/navgt;\r\n        &lt;\/headergt;\r\n        \r\n        &lt;div id=\"core\" class=\"clearfix\"gt;\r\n            &lt;section id=\"left\"gt;\r\n            \t&lt;pgt;some content here.&lt;\/pgt;\r\n            &lt;\/sectiongt;\r\n            \r\n            &lt;section id=\"right\"gt;\r\n                &lt;pgt;but some here as well!&lt;\/pgt;\r\n            &lt;\/sectiongt;\r\n        &lt;\/divgt;\r\n        \r\n        &lt;footergt;\r\n            &lt;pgt;Some copyright and legal notices here. Maybe use the \u00a9 symbol a bit.&lt;\/pgt;\r\n        &lt;\/footergt;\r\n    &lt;\/divgt;\r\n\r\n&lt;\/bodygt;\r\n&lt;\/htmlgt;\r\n<\/pre>\n<p>Right away this isn\u2019t very different from a standard HTML4 web page. What you may notice is that we <strong>do not need to include any more self-closing tags<\/strong>. This is truly wonderful news as it will save lots of time off your development projects.<\/p>\n<p>For those who don\u2019t know, in XHTML drafts there were many elements labelled <strong>self-closing<\/strong>. These would end with a forward slash before the \u2018greater than\u2019 operator to signify you wouldn\u2019t need to include another closing tag elsewhere. As an example, to create a meta keywords tag you would use <code>&lt;meta name=\"keywords\" content=\"HTML5,CSS3,JavaScript\" \/gt;<\/code> without the need for a closing <code>&lt;\/metagt;<\/code> elsewhere.<\/p>\n<p>This rule still applies in HTML5. But now you <strong>don\u2019t even need the extra forward slash<\/strong>! <code>&lt;meta name=\"keywords\" content=\"HTML5,CSS3,JavaScript\"gt;<\/code> is completely <strong>valid<\/strong>, although you are allowed to continue using the XHTML\/XML standard.<\/p>\n<p>For all standards-compliant browsers both elements will render the same way.<\/p>\n<h2>Defining our Page Areas<\/h2>\n<p>The majority of our new code shouldn\u2019t be too shocking. Our <strong>doctype is hilariously simpler<\/strong> than ever, <strong>no need for excessive body attributes<\/strong>, and information in our heading is clearly labelled.<\/p>\n<p>Moving on I\u2019d like to focus your attention on the content inside our <code>&lt;bodygt;<\/code> tag. This includes all of the main page\u2019s structure. I\u2019ve purposefully used a few nice HTML5 tags to signify how you may include them in your own work.<\/p>\n<p>First you\u2019ll see the entire page is <strong>encapsulated within a <em>div<\/em> tag<\/strong>. I\u2019ve labelled this with an ID of <em>wrapper<\/em>, meaning it wraps around our entire website content.<\/p>\n<p>This is <strong>useful to set a maximum width or position content<\/strong> around on the screen. Next I\u2019ve fractured the page into 3 core elements \u2013 one <code>&lt;header&gt;<\/code>, a core <code>&lt;div&gt;<\/code>, and  a short <code>&lt;footer&gt;<\/code>.<\/p>\n<p>Inside my custom header area I have added a simplistic display of the page\u2019s title, and navigation items using the <code>&lt;nav&gt;<\/code> tag as a wrapper.<\/p>\n<p>Now for the <code>&lt;div&gt;<\/code> with an ID of <em>core<\/em> I have applied a secondary <em>clearfix<\/em>. This feature makes it so we can <strong>freely float 2 columns inside<\/strong> and we won\u2019t experience any dropped content or strange phenomena. And rightfully so, as inside I have placed two <code>&lt;sectiongt;<\/code> tags which will include our main content area and sidebar, respectively. We\u2019ll be using CSS styles to float them apart.<\/p>\n<p>Similarly the quiet <strong><em>footer<\/em> tag<\/strong> works well to differentiate this content among the page. Inside I have placed a solemn paragraph which may contain some copyright and ownership information. But chances are good you\u2019ll want to include a bit more content, such as secondary links to your pages.<\/p>\n<h2>Creative CSS3 Wizardry<\/h2>\n<p>To finish off this basic stencil layout we can use a few CSS styles. In the basic HTML5 template I added an <strong>external CSS stylesheet<\/strong> so we can keep our code areas separated.<\/p>\n<p>This will <strong>clear up a lot of confusion<\/strong> in the long run when your pages and styles begin to run on for different pages.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-css3-styling.jpg\" alt=\"html5 css3 styling\" width=\"500\" height=\"373\"><\/figure>\n<p>So I haven\u2019t spent a great deal of time with CSS, but enough to showcase a couple of neat effects. First off I\u2019ve used some of the <strong>border-radius settings<\/strong> to build very cool navigation link hover effects.<\/p>\n<p>You can target this same effect in the template code, just add the following lines into the CSS document.<\/p>\n<pre>\r\nnav {\r\n\tdisplay: block;\r\n\tmargin-bottom: 10px;\r\n}\r\nnav ul {\r\n\tlist-style: none;\r\n\tfont-size: 14px;\r\n}\r\nnav ul li {\r\n\tdisplay: inline;\r\n}\r\nnav ul li a {\r\n\tdisplay: block;\r\n\tfloat: left;\r\n\tpadding: 3px 6px;\r\n\tcolor: #575c7d;\r\n\ttext-decoration: none;\r\n\tfont-weight: bold;\r\n}\r\nnav ul li a:hover {\r\n\tbackground: #deff90;\r\n\tcolor: #485e0f;\r\n\t-webkit-border-radius: 3px;\r\n\t-moz-border-radius: 3px;\r\n\tborder-radius: 3px;\r\n\tpadding: 3px 6px;\r\n\tmargin: 0;\r\n\ttext-decoration: none;\r\n}\r\n<\/pre>\n<p>Another neat effect is the <strong>clearfix styles<\/strong>. This isn\u2019t an entirely new concept with CSS3, but it is important for building standards-compliant web pages.<\/p>\n<p>Often when you\u2019re looking to float content next to each other you\u2019ll experience buggy positioning glitches. This is caused by offset margins and errors in setting absolute widths for your floated content.<\/p>\n<p>This concept can seem a bit confusing, and I\u2019ve added a small bit of code below to help. Basically we\u2019re targeting two <code>&lt;sectiongt;<\/code> elements, <code>#left<\/code> and <code>#right<\/code> to correspond to their side of the page. I\u2019ve set each with a definite width and floating left, so they\u2019ll stack right up next to each other.<\/p>\n<p>Since our container <code>div#core<\/code> contains the <em>clearfix<\/em> class, this means all internal content can <strong>be move around freely<\/strong> and automatically clears extra space afterwards.<\/p>\n<pre>\/* page core *\/\r\ndiv#core {\r\n\tdisplay: block;\r\n\tclear: both;\r\n\tmargin-bottom: 20px;\r\n}\r\nsection#left {\r\n\twidth: 550px;\r\n\tfloat: left;\r\n\tmargin: 0 15px;\r\n}\r\nsection#right {\r\n\tfloat: left;\r\n\twidth: 300px;\r\n}\r\n\r\n \r\n\/* clearfix *\/\r\n.clearfix:after {\r\n\tcontent: \".\";\r\n\tdisplay: block;\r\n\tclear: both;\r\n\tvisibility: hidden;\r\n\tline-height: 0;\r\n\theight: 0;\r\n}\r\n.clearfix {\r\n\tdisplay: inline-block;\r\n}\r\n \r\nhtml[xmlns] .clearfix {\r\n\tdisplay: block;\r\n}\r\n* html .clearfix {\r\n\theight: 1%;\r\n}\r\n\r\n<\/pre>\n<p>These bits of code are simple for getting started. They also pertain to our HTML5 template code constructed earlier, so this is simple practice. But when it comes to real web junkies you\u2019ll be looking into more CSS3 functionality.<\/p>\n<h2>Lesser Known CSS3 Syntax<\/h2>\n<p>To construct full HTML5\/CSS3 web pages you\u2019ll begin to use some much more complex stylesheets. Many designers know of shorthand code (such as the <strong><code>font: property<\/code><\/strong>), since these have been standards even before CSS2.<\/p>\n<p>But there are a few new properties in CSS3 which many designers aren\u2019t thinking about. Many of these aren\u2019t just for aesthetics, but also include animation effects.<\/p>\n<p>Below is a short list explaining a few of the properties you may consider playing with. Try googling for syntax examples if you feel lost.<\/p>\n<ul>\n<li><code>box-shadow<\/code>: adds a neat shadow effect to your page elements. You are given 4 parameters which set the position left\/right, up\/down, shadow blur and color. Note that box shadows are not considered additional space to the original width\/height.<\/li>\n<li><code>text-shadow<\/code>: creates beautiful shadows behind your page text. With the right effects your letters could appear to pop right off the page.<\/li>\n<li><code>border-radius<\/code>: Rounded corners have taken a long time to become accepted standards. Few years ago many web 2.0 designers were crafting background images just to fit rounded corners in with CSS. But using CSS3 border-radius you can manipulate the curve of each border on any element.<\/li>\n<li><code>opacity<\/code>: Seems like a simple property which many designers don\u2019t consider. Opacity expects a single numerical input ranging from 0 to 1.0 (0% \u2013 100%). This effect works great as a hover animation.<\/li>\n<li><code>@font-face<\/code>: Another beautiful example of some complex CSS styles and typography. Web designers are now able to work with their own custom fonts by defining them as variables inside your CSS documents.<\/li>\n<li><code>box-sizing<\/code>: by default box-sizing will set all of your elements as <strong>content-box<\/strong>. This means width, padding, and borders are all included into the max width. But set to <code>border-box<\/code> you can define a max width (say 20px) and added padding\/borders will include themselves into this, thus removing space inside the object. It\u2019s a fantastic property once you master its resourcefulness.<\/li>\n<\/ul>\n<p>These properties all have their upsides and downfalls. I wouldn\u2019t recommend trying to cram them all into your web pages. But <strong>practice will give you a clear mindset<\/strong> to enter into developing further websites with ease.<\/p>\n<p>One more core piece of added syntax worth mentioning is <strong>attribute selectors<\/strong>. With CSS3 you can now <strong>define styles based on HTML attributes<\/strong> (such as type, href, title) and even provide specific values.<\/p>\n<p>So for example we could target links with a defined title attribute and give them a set of background icon.<\/p>\n<pre>\r\nul li[title^=\"ico\"] {\r\n\tbackground: url('my-icon.gif');\r\n}<\/pre>\n<p>If you notice I\u2019ve included a <em>caret symbol<\/em> before the equals sign. This is an operator which <strong>defines all list items holding the prefix, <em>ico<\/em><\/strong>. Alternatively you can replace the caret(^) with a dollar sign($) to target the suffix area of your title. In this way CSS3 knows to add background images where you could set the titles as \u2018first ico\u2019 or \u2018book ico\u2019. Read up a bit more about <a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/www.css3.info\/preview\/attribute-selectors\/\">attribute selectors<\/a> if you\u2019re interested.<\/p>\n<h2>Putting it all together<\/h2>\n<p>At the core of HTML5 and CSS3 web pages is <strong>simplicity<\/strong>. Web developers are trying to build highly creative websites in less time and with less stress.<\/p>\n<p>The new features in HTML5 allow this with plenty of wiggle room. And using some of the <a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/beginners-guide-to-css3\/\" rel=\"noopener noreferrer\">new CSS3 selectors and properties<\/a> will give you advantages in the long run.<\/p>\n<figure><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-performance-and-integration.jpg\" alt=\"html5 performance and integration\" width=\"500\" height=\"373\"><\/figure>\n<p>But as well you should be <strong>considering the end user<\/strong>. The process of building a web page ultimately ends after launching the website public.<\/p>\n<p>\\Your goal is to <strong>please audience with easy-to-access information<\/strong>, and not just human readers, but <strong>search engine crawlers and indexing bots<\/strong>. Semantics have greatly evolved to include new HTML5 layout elements, splitting up page layouts consistently.<\/p>\n<p>It\u2019s never been easier to construct a small navigation and footer section in line with all modern web browsers.<\/p>\n<p>Once you have become comfortable building HTML5 web pages you\u2019ll likely start looking into page animations. Even minor effects with JavaScript and AJAX can majorly <strong>improve user experience and site performance<\/strong>.<\/p>\n<p>Although this isn\u2019t part of the article scope, I recommend <a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/tooltips-scripts-50-scripts-with-ajax-javascripts-css-tutorials\/\" rel=\"noopener noreferrer\">toying around with jQuery<\/a> if you have any time. The open source library is astounding and allows for rapid prototyping on top of HTML5 page elements.<\/p>\n<h2>Additional resources:<\/h2>\n<p>Bloggers all around the world have been discussing the new trends in HTML5 and CSS3 and sharing resources to the public.<\/p>\n<p>The time is changing and the web community is changing with them. You should consider a few niche areas to study into and build a small interest.<\/p>\n<p>Below are some additional lists, articles and tutorials you may enjoy. I\u2019ve taken the liberty of splitting the lists into HTML5 and CSS3 resources.<\/p>\n<p>Based on what you\u2019re looking into there should be a few topics here for everybody. Also enjoy the brief gallery of free HTML themes available for download online!<\/p>\n<h3>HTML5<\/h3>\n<ul>\n<li><a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/15-html5-experiments\/\" rel=\"noopener noreferrer\">HTML5: 15 Inspiring Experiments<\/a><\/li>\n<li><a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/html5-web-applications\/\" rel=\"noopener noreferrer\">HTML5: 19 Web Applications<\/a><\/li>\n<li><a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/48-excellent-html5-demos\/\" rel=\"noopener noreferrer\">HTML5: 48 Potential Flash-Killing Demos<\/a><\/li>\n<li><a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/ajax-html5-css3-contact-form-tutorial\/\" rel=\"noopener noreferrer\">Create Ajax-Based HTML5\/CSS3 Contact Form<\/a><\/li>\n<\/ul>\n<h3>CSS3<\/h3>\n<ul>\n<li><a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/beginners-guide-to-css3\/\" rel=\"noopener noreferrer\">CSS3: A Beginner\u2019s Guide<\/a><\/li>\n<li><a target=\"_blank\" href=\"https:\/\/www.hongkiat.com\/blog\/css3-search-field\/\" rel=\"noopener noreferrer\">CSS3: Creating Search Field<\/a><\/li>\n<li><a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/www.smashingmagazine.com\/2011\/03\/how-to-use-css3-pseudo-classes\/\">CSS3: Using Pseudo-Classes<\/a><\/li>\n<li><a rel=\"nofollow noopener noreferrer\" target=\"_blank\" href=\"https:\/\/www.noupe.com\/css3\/css3-exciting-functions-and-features-30-useful-tutorials.html\">CSS3: 30+ Useful Tutorials<\/a><\/li>\n<\/ul>\n<div class=\"ref-block ref-block--post\" id=\"ref-post-1\">\n\t\t\t\t\t<a href=\"https:\/\/www.hongkiat.com\/blog\/60-high-quality-free-web-templates-and-layouts\/\" class=\"ref-block__link\" title=\"Read More: 50 High Quality Free Website Templates\" rel=\"bookmark\"><span class=\"screen-reader-text\">50 High Quality Free Website Templates<\/span><\/a>\n<div class=\"ref-block__thumbnail img-thumb img-thumb--jumbo\" data-img='{ \"src\" : \"https:\/\/assets.hongkiat.com\/uploads\/thumbs\/250x160\/60-high-quality-free-web-templates-and-layouts.jpg\" }'>\n\t\t\t\t\t\t\t<noscript>\n<style>.no-js #ref-block-post-2818 .ref-block__thumbnail { background-image: url(\"https:\/\/assets.hongkiat.com\/uploads\/thumbs\/250x160\/60-high-quality-free-web-templates-and-layouts.jpg\"); }<\/style>\n<\/noscript>\n\t\t\t\t\t\t<\/div>\n<div class=\"ref-block__summary\">\n<h4 class=\"ref-title\">50 High Quality Free Website Templates<\/h4>\n<p class=\"ref-description\">\n\t\t\t\t\t\tA comprehensive list of premium web templates that are feature-filled, easy to customize and free to download.\t\t\t\t\t\t<span>Read more<\/span><\/p>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.<\/p>\n","protected":false},"author":18,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[352],"tags":[507,506,2016],"topic":[4520],"class_list":["entry-content","is-maxi"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.8 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Beginner&#039;s Guide to Building HTML5\/CSS3 Webpages - Hongkiat<\/title>\n<meta name=\"description\" content=\"Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Beginner&#039;s Guide to Building HTML5\/CSS3 Webpages\" \/>\n<meta property=\"og:description\" content=\"Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/\" \/>\n<meta property=\"og:site_name\" content=\"Hongkiat\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hongkiatcom\" \/>\n<meta property=\"article:published_time\" content=\"2011-10-04T13:02:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-04-03T16:43:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg\" \/>\n<meta name=\"author\" content=\"Jake Rocheleau\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:site\" content=\"@hongkiat\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jake Rocheleau\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/\"},\"author\":{\"name\":\"Jake Rocheleau\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/966b2daea15283b4145e71aa98a82c2a\"},\"headline\":\"Beginner&#8217;s Guide to Building HTML5\\\/CSS3 Webpages\",\"datePublished\":\"2011-10-04T13:02:52+00:00\",\"dateModified\":\"2025-04-03T16:43:20+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/\"},\"wordCount\":1920,\"commentCount\":72,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/building-html5-css-webpages\\\/html5-semantics.jpg\",\"keywords\":[\"CSS\",\"HTML\",\"HTML5 \\\/ CSS3 Tutorials\"],\"articleSection\":[\"Web Design\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/\",\"name\":\"Beginner's Guide to Building HTML5\\\/CSS3 Webpages - Hongkiat\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/building-html5-css-webpages\\\/html5-semantics.jpg\",\"datePublished\":\"2011-10-04T13:02:52+00:00\",\"dateModified\":\"2025-04-03T16:43:20+00:00\",\"description\":\"Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#primaryimage\",\"url\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/building-html5-css-webpages\\\/html5-semantics.jpg\",\"contentUrl\":\"https:\\\/\\\/assets.hongkiat.com\\\/uploads\\\/building-html5-css-webpages\\\/html5-semantics.jpg\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/building-html5-css-webpages\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Beginner&#8217;s Guide to Building HTML5\\\/CSS3 Webpages\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"name\":\"Hongkiat\",\"description\":\"Tech and Design Tips\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#organization\",\"name\":\"Hongkiat.com\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"contentUrl\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/wp-content\\\/uploads\\\/hkdc-logo-rect-yoast.jpg\",\"width\":1200,\"height\":799,\"caption\":\"Hongkiat.com\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/hongkiatcom\",\"https:\\\/\\\/x.com\\\/hongkiat\",\"https:\\\/\\\/www.pinterest.com\\\/hongkiat\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/#\\\/schema\\\/person\\\/966b2daea15283b4145e71aa98a82c2a\",\"name\":\"Jake Rocheleau\",\"description\":\"Jake is a writer and designer with over 10 years experience working on the web. He writes about user experience design and cool resources for designers\",\"sameAs\":[\"https:\\\/\\\/www.hongkiat.com\"],\"url\":\"https:\\\/\\\/www.hongkiat.com\\\/blog\\\/author\\\/jake\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Beginner's Guide to Building HTML5\/CSS3 Webpages - Hongkiat","description":"Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/","og_locale":"en_US","og_type":"article","og_title":"Beginner's Guide to Building HTML5\/CSS3 Webpages","og_description":"Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.","og_url":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/","og_site_name":"Hongkiat","article_publisher":"https:\/\/www.facebook.com\/hongkiatcom","article_published_time":"2011-10-04T13:02:52+00:00","article_modified_time":"2025-04-03T16:43:20+00:00","og_image":[{"url":"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg","type":"","width":"","height":""}],"author":"Jake Rocheleau","twitter_card":"summary_large_image","twitter_creator":"@hongkiat","twitter_site":"@hongkiat","twitter_misc":{"Written by":"Jake Rocheleau","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#article","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/"},"author":{"name":"Jake Rocheleau","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/966b2daea15283b4145e71aa98a82c2a"},"headline":"Beginner&#8217;s Guide to Building HTML5\/CSS3 Webpages","datePublished":"2011-10-04T13:02:52+00:00","dateModified":"2025-04-03T16:43:20+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/"},"wordCount":1920,"commentCount":72,"publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg","keywords":["CSS","HTML","HTML5 \/ CSS3 Tutorials"],"articleSection":["Web Design"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/","url":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/","name":"Beginner's Guide to Building HTML5\/CSS3 Webpages - Hongkiat","isPartOf":{"@id":"https:\/\/www.hongkiat.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#primaryimage"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#primaryimage"},"thumbnailUrl":"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg","datePublished":"2011-10-04T13:02:52+00:00","dateModified":"2025-04-03T16:43:20+00:00","description":"Learn how to build stunning webpages using HTML5 and CSS with this step-by-step guide. Perfect for beginners and experienced developers alike.","breadcrumb":{"@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#primaryimage","url":"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg","contentUrl":"https:\/\/assets.hongkiat.com\/uploads\/building-html5-css-webpages\/html5-semantics.jpg"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hongkiat.com\/blog\/building-html5-css-webpages\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hongkiat.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Beginner&#8217;s Guide to Building HTML5\/CSS3 Webpages"}]},{"@type":"WebSite","@id":"https:\/\/www.hongkiat.com\/blog\/#website","url":"https:\/\/www.hongkiat.com\/blog\/","name":"Hongkiat","description":"Tech and Design Tips","publisher":{"@id":"https:\/\/www.hongkiat.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hongkiat.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hongkiat.com\/blog\/#organization","name":"Hongkiat.com","url":"https:\/\/www.hongkiat.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","contentUrl":"https:\/\/www.hongkiat.com\/blog\/wp-content\/uploads\/hkdc-logo-rect-yoast.jpg","width":1200,"height":799,"caption":"Hongkiat.com"},"image":{"@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hongkiatcom","https:\/\/x.com\/hongkiat","https:\/\/www.pinterest.com\/hongkiat\/"]},{"@type":"Person","@id":"https:\/\/www.hongkiat.com\/blog\/#\/schema\/person\/966b2daea15283b4145e71aa98a82c2a","name":"Jake Rocheleau","description":"Jake is a writer and designer with over 10 years experience working on the web. He writes about user experience design and cool resources for designers","sameAs":["https:\/\/www.hongkiat.com"],"url":"https:\/\/www.hongkiat.com\/blog\/author\/jake\/"}]}},"jetpack_featured_media_url":"https:\/\/","jetpack_shortlink":"https:\/\/wp.me\/p4uxU-2KL","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/10587","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/users\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/comments?post=10587"}],"version-history":[{"count":4,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/10587\/revisions"}],"predecessor-version":[{"id":73504,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/posts\/10587\/revisions\/73504"}],"wp:attachment":[{"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/media?parent=10587"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/categories?post=10587"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/tags?post=10587"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.hongkiat.com\/blog\/wp-json\/wp\/v2\/topic?post=10587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}