Skip to main content

What Beautiful HTML Code Looks Like

I originally wrote this over two years ago. It was getting a little long in the tooth, especially now that HTML5 has come along and made HTML far more beautiful than even XHTML 1.1 was. So I updated it!

I can’t help but view source on every nice looking website I see. It’s like if you had x-ray glasses that allowed you to see any person you ever saw in their underwear at will. How could you not? It’s just so tempting to see if a beautiful website is built with beautiful code as well, or if its beauty if only skin-deep. Code? Beautiful? Sure. After all, Code is Poetry. This is just HTML, so it can’t be quite as intricate and elegant as a dynamic language, but it still bears the brush strokes of its creator.

It gets me to thinking, what makes beautiful code? In HTML, it comes down to craftsmanship. Let’s take a look at some markup written they way markup should be written and see how beautiful it can be.



It’s big enough to print out and tape up inside your locker to impress your friends. Well, it might be a bit of an awkward size. I’ll make the PSD available in case you want to alter it.

* HTML5 – HTML5 and it’s new elements make for the most beautiful HTML yet.
* DOCTYPE – HTML5 has the best DOCTYPE ever
* Indentation – Code is indented to show parent/child relationships and emphasize hierarchy.
* Charset – Declared as first thing in the head, before any content.
* Title – Title of the site is simple and clean. Purpose of page is first, a separator is used, and ends with title of the site.
* CSS – Only one single stylesheet is used (media types declared inside stylesheet), and only served to good browsers. IE 6 and below are served a universal stylesheet.
* Body – ID applied to body to allow for unique page styling without any additional markup.
* JavaScript – jQuery (the most beautiful JavaScript library) is served from Google. Only a single JavaScript file is loaded. Both scripts are referenced at the bottom of the page.
* File Paths – Site resources use relative file paths for efficiency. Content file paths are absolute, assuming content is syndicated.
* Image Attributes – Images include alternate text, mostly for visually impaired uses but also for validation. Height and width applied for rendering efficiency.
* Main Content First – The main content of the page comes after basic identity and navigation but before any ancillary content like sidebar material.
* Appropriate Descriptive Block-Level Elements – Header, Nav, Section, Article, Aside… all appropriately describe the content they contain better than the divs of old.
* Hierarchy – Title tags are reserved for real content, and follow a clear hierarchy.
* Appropriate Descriptive Tags – Lists are marked up as lists, depending on the needs of the list: unordered, ordered, and the underused definition list.
* Common Content Included – Things common across multiple pages are inserted via server side includes (via whatever method, language, or CMS that works for you)
* Semantic Classes – Beyond appropriate element names, classes and IDs are semantic: they describe without specifying. (e.g. “col” is much better than “left”)
* Classes – Are used any time similar styling needs to be applied to multiple elements.
* IDs – Are used any time an element appears only once on the page and cannot be targeted reasonably any other way.
* Dynamic Elements – Things that need to be dynamic, are dynamic.
* Characters Encoded – If it’s a special character, it’s encoded.
* Free From Styling – Nothing on the page applies styling or even implies what the styling might be. Everything on the page is either a required site resource, content, or describing content.
* Comments – Comments are included for things that may not be immediately obvious upon reviewing the code.
* Valid – The code should adhere to W3C guidelines. Tags are closed, required attributes used, nothing deprecated, etc.

http://css-tricks.com/what-beautiful-html-code-looks-like/

Popular posts from this blog

CSS Math Functions

  CSS Math Functions: A Simple Guide for Designers & Developers In modern CSS, math functions let you perform real calculations directly in your styles. This empowers your layouts, spacing, and responsive design with more flexibility and control. Let’s explore what CSS math functions are, why they matter, and how to use them. What Are CSS Math Functions? CSS math functions let you compute values in real time. Instead of hardcoding numbers, you can use formulas. The most commonly supported math functions are: calc() min() max() clamp() These allow mixing units (e.g., % + px ) or setting limits on values. Why Use Math Functions? Responsive design becomes easier — e.g. mix percentages and fixed px values. Dynamic spacing & sizing without needing many media queries. Constraints & boundaries — you can ensure a value stays between a minimum and maximum. Cleaner code — fewer manual adjustments. How Each Function Works + Examples 1. ca...

How CSS Sprites Work Under the Hood

When a browser loads a webpage, each image file triggers a separate HTTP request. If you have 20 icons, that’s 20 extra requests. A sprite consolidates all icons into one file , so the browser downloads just that single image once. Then, using background-position , you “shift” the visible window of that image to show the correct icon. Learn how to use CSS image sprites to enhance your website's performance Workflow in Detail Collect Icons Gather all icons you use repeatedly (social media, buttons, UI elements). Create a Sprite Sheet Use a tool like: Figma or Photoshop for manual placement. SpritePad or Glue (command line) to automate sprite sheet generation and output CSS coordinates. Calculate Positions Each icon’s top-left coordinates inside the sprite image determine its background-position . Example: if an icon starts 96 px from the left and 64 px from the top, use: .icon-example { background-position : - 96px - 64px ; } Serve Optimally Save t...

Web Accessibility

  Web Accessibility: Making the Internet Inclusive for Everyone What Is Web Accessibility? Web accessibility means designing and developing websites so that people of all abilities and disabilities can use them effectively . An accessible website ensures that users with visual, auditory, motor, or cognitive impairments can perceive, understand, navigate, and interact with its content. Why Accessibility Matters Inclusive Experience: The web should be usable by everyone, regardless of physical or cognitive abilities. Legal Compliance: Many countries enforce accessibility laws (such as the ADA in the U.S. or the RPwD Act in India). Non-compliance can lead to legal action. Better User Experience: Accessible design benefits all users, including those on mobile devices, in noisy environments, or with slow internet connections. SEO Benefits: Search engines favor well-structured, semantic content, which overlaps with accessibility best practices. Core Principles ...