Jens Oliver Meiert

HTML (Hypertext Markup Language) (2)

Use the “i” Element, and Use It Appropriately

“Use em instead of i” is in the Top 25 of bad advice you can get in HTML development. The two elements have different meanings, the blunt rule ignores all context, and i is a valid element with legitimate use cases.

#72 · · ,

HTML Concepts: The “Nothing” Content Model

There’s a content model in HTML that contains—nothing. Details on what this means, and how it relates to “empty” or void elements.

#71 · ·

2021: 98% of the Top 100 U.S. Websites Use Invalid HTML

Is frontend development in the bad shape it’s said to be? Is it hyperbole when frontend developers are accused of poor quality work? When you look at the code of the most popular websites, the answer is clear.

#70 · · , ,

Upgrade Your HTML III.

Upgrade Your HTML III

If you care about HTML as a craft, if you consider yourself an HTML minimalist, if you believe in pushing for boundaries (and sometimes overdoing it), then this is a right book (and a right book series) for you—with 10 fresh examples from the field that get inspected and improved.

#69 · · , , ,

HTML Concepts: “Body-Ok”

“body-ok” relates to link type keywords, and denotes what link elements are okay to be used in the document body.

#68 · ·

HTML: The 16 Content Categories and Their Elements

HTML puts elements into content categories. This article serves as a boring, brief, but updated overview over the broad and overlapping categories of HTML, and which elements fall into them.

#67 · ·

In Critical Defense of Frontend Development

The field of frontend development is in another crisis, largely due to an incomplete, misinterpreted definition and a bizarre mess created by “web development as a commodity” and “web development as software development.” How frontend development is more than development, and what we can (and should) do.

#66 · · , , , ,

Notes on HTML 3.2

Would it still be useful to read the HTML 3.2 specification—from 1997? A few observations.

#65 · ·

Upgrade Your HTML II.

Upgrade Your HTML II

If you care about HTML as a craft, if you consider yourself an HTML minimalist, if you believe in pushing for boundaries (and sometimes overdoing it), then this is a right book (and a right book series) for you—with 10 new examples from the field that get inspected and improved.

#64 · · , , ,

On HTML (and HTML in 2020)

What seems noteworthy about HTML, and how we’re doing on that in the year 2020.

#63 · ·

The 27 Boolean Attributes of HTML

What is a Boolean, what is a Boolean attribute, how does a Boolean attribute work, and what Boolean attributes are there? Meet the Boolean attributes, from allowfullscreen to truespeed.

#62 · ·

The 4 Pillars of Good Embed Code

Embed code is third-party code to be integrated on websites and apps, like ads or social media widgets. There have been many problems with embed code for a very long time. This post covers the essence of what makes for good embed code.

#61 · · , , ,

HTML and CSS and the 2019 Web Almanac

The HTTP Archive’s Web Almanac is fantastic because it provides us with data about how we build what kinds of websites. While the release of the 2019 Almanac has been accompanied by some analysis, I had found it interesting to interpret the data, too.

#60 · · ,

An HTML Optimizer’s Config for html-minifier

Jad Joubran asked me about my configuration for html-minifier the other week, and in a hurry I pointed him to the config I had worked out for sum.cumo. In my own projects, however, I work with a different, more ambitious setup.

#59 · · , ,

Upgrade Your HTML.

Upgrade Your HTML (the Booklet)

I’ve written a very short book on improving HTML code: Upgrade Your HTML. Upgrade Your HTML is about one thing: Picking examples of HTML in the wild, and explaining how to make that code better. Kindly. Constructively. Thoroughly, as finding a balance between detail and brevity permits.

#58 · · , , ,

On Writing Better Markup

As HTML is so important and yet also so easy, everyone writes HTML, and everyone says they can write HTML. And with that they don’t just mean they are able to write HTML, but that they write good HTML, where “good” means “high quality.” That would be great news.

#57 · · ,

Optional HTML: Everything You Need to Know

Optional HTML can be left out to improve performance, to guide code comprehension, and to hone the craft. An overview over all optional tags, rules around quotes for attribute values, and omissible attribute value defaults, as well as notes on pitfalls and tools.

#56 · · ,

When to Use “img,” “img@srcset,” and “picture” and “source”

I’ve disliked srcset and the whole family of ideas around it from the start because doing the same thing for the same purpose several times has usually looked like too much DX cost for too little UX gain to me. Two angles at what to use when.

#55 · ·

The Problem With Web Development Checklists, or: The Frontend Checklist, Revised

Checklists are a great way to make sure nothing gets forgotten, yet they are problematic when they contain items that aren’t important. A few general thoughts and a very specific review of The Frontend Checklist—of which 33 guidelines appear useful, and 41 not (yet).

#54 · · , ,

Optional “@lang”

The lang attribute is one of HTML’s global attributes. If one doesn’t simply take it for granted, it begs a number of questions—and these suggest to drop W3C requirements around it, and to demand software to do the job.

#53 · · ,

What Happened on Google+, the Web Development Archives

Following a few philosophy posts to be archived, here are past entries related to web development. Nothing more, nothing less.

#52 · · , ,

HTML and Performance: Leave Out Optional Tags and Quotes

As experts we should know what code is optional and leave it out, and our production systems should do a better job assisting us with that. After all the years of neglecting basic HTML optimization, let’s think about taking the next step and not ship optional HTML markup.

#51 · · , ,

HTML, CSS, and Dependency Direction

Adam Wathan wrote one of the most interesting web development articles I’ve read in the last few months: CSS Utility Classes and “Separation of Concerns.” At least until “Phase 3” there’s much to learn about current web development…

#50 · · ,

The Compact Guide to Web Maintainability: 200 Tips and Resources

The result of reviewing, normalizing, rephrasing, sorting, and testing 134 responses to a maintainability survey that yielded more than 500 data points, to form a new guide, a new and more definite guide to web maintainability.

#49 · · , ,

What I Learned Building Google’s Web Frameworks

On building Google’s Go and Maia HTML/CSS frameworks, and succeeding and failing as a tech lead.

#48 · · , ,

HTML Statistics: 5 Take-Aways

A few quick comments on Catalin Rosu’s interesting follow-up analysis of his sampling of eight million websites. Some practices are wonderful to note, others have been commented on, yet one or the other point drowned.

#47 · ·

The Little Book of HTML/CSS Coding Guidelines.

New Book: “The Little Book of HTML/CSS Coding Guidelines”

Out of the blue! My latest book, The Little Book of HTML/CSS Coding Guidelines, is now available. It’s a brief introduction into the theory and practice of coding standards. Emphasis, as the title suggests, is on HTML and CSS, and furthermore on Google’s guidelines…

#46 · · , ,

On Web Development.

New Book: “On Web Development”

I wrote another book. On Web Development. On Web Development is an ebook that collects most of the articles about web development (and web design) that I wrote between 2005 and 2015. Most articles as in most useful, most important, and also most controversial.

#45 · · , , , ,

Web Standards: We’re F’ing It Up

It’s a problem to just change specs. But it’s an increasingly bigger problem not to clean and prune them. The intimidating complexity of web standard specs should precisely be a motivation, not a threat, to come up with a plan. It follows the populist version.

#44 · · ,

A Vision of Web Development

There is one thing every web developer should aspire to: writing the most minimal, semantically appropriate, valid HTML, and then never changing it. “Never” not in a sense of denial and refusal, but in the sense of a guiding light…

#43 · · , , , , ,

The Little Book of HTML/CSS Frameworks.

New Book: “The Little Book of HTML/CSS Frameworks”

It’s out! My new book, The Little Book of HTML/CSS Frameworks, is now available. I myself have been surprised by the sudden release, and while I’m still unsure about how print copies can be obtained, the book can now be downloaded for free at O’Reilly.

#42 · · , , ,

On the Deterioration of HTML/CSS Practices

Presentational markup for everyone.

#41 · · , ,

Google and HTML/CSS Code Quality

For much of Google’s life time there have been few Google web pages of high code quality. That had changed over the last years, but now there are regressions. On the rise and fall of Google’s websites.

#40 · · , , ,

HTML and Specifying Language

Questioning the importance and ways of marking up language in HTML documents, in particular changes in language.

#39 · ·

HTML Explained in 123 Tweets: The Google #htmltuesday Archive

Did you know that Google’s Webmaster Team tweeted short statements about all HTML elements, every week, for two and a half years? It was called “#htmltuesday” and ran from 2011 to 2013. All of these tweets are now available in one place: here.

#38 · · ,

CSS, HTML, and the Problem of Spec Fragmentation

We have not one but two fundamental problems with CSS. One is unrestricted growth and complexity leading to poor understanding and poor code. Another one is spec fragmentation, also an issue with HTML, which results in inefficiencies. We should look for a better balance.

#37 · · ,

No to DRM in HTML

It’s been quiet around DRM lately so I like to share my opinion, in brief: DRM doesn’t belong into nor anywhere near HTML. For one, HTML is a language to describe documents and, since HTML 5, applications. I don’t deem DRM in scope for HTML…

#36 · ·

The Curious Case of Breadcrumbs in HTML

We had an interesting thread about breadcrumbs on W3C’s public-html the other day. At first just targeting delimiters, it spawned a debate about the appropriate markup. Here’s my view on breadcrumbs in HTML.

#35 · · ,

Object-Oriented HTML, and OOCSS

“Object-oriented CSS” is the idea of treating page elements as objects, giving all these objects classes, treating objects’ classes as single entities in style sheets, and taking it from there. I reviewed the old OOCSS site and Smashing Magazine’s introduction.

#34 · · ,

HTML and Non-Script Styling

If you are to style a document differently based on whether certain technology is available, you should keep two things in mind: HTML itself is static and separation of concerns is important for maintainability…

#33 · · ,

On Semantics in HTML

As web developers we like to talk about “semantic markup,” a somehow inaccurate short form for “markup that is meaningful and used how it’s supposed to be used.” But where is all that meaning coming from? Let’s take a look.

#32 · · ,

HTML, “@width”, and “@height”

As the width and height attributes are to remain part of HTML, limit their use. The reason to avoid @width and @height is that they are presentational and hence constitute potential maintainability issues.

#31 · · ,

HTML/CSS Frameworks: Useful, Universal, Usable, Unobtrusive

A high quality HTML/CSS framework needs to have four attributes: useful, universal, usable, and unobtrusive. The four U’s.

#30 · · , , ,

The 3 Ground Rules for Writing HTML

The fundamentals every web developer should know: on respecting syntax and semantics, avoiding presentational and behavioral markup, and leaving out everything that is not absolutely necessary.

#29 · · , ,

HTML, CSS, and Web Development Practices: Past, Present, and Future

Articles with a title consisting of more than 15,000 characters don’t need an introduction.

#28 · · , ,

“HTML 5” or “HTML5”?

It’s “HTML5,” not “HTML 5,” declares the most recent post on the WHATWG blog. A seemingly trivial matter, yet it’s inconsistent.

#27 · ·

WDR #3: Optional Tags, Unquoted Attribute Value Syntax

The Web Dev Report, issue #3.

#26 · ·

Microformats, Key Flaws

I like the idea behind microformats, but I’m not convinced of the way that idea is brought to life. I see three major flaws that appear to make microformats stand in their own way.

#25 · · ,

XHTML, RIP

Let’s end this week of morbid posts: The XHTML 2 Working Group is expected to stop their work end of 2009. “Today the Director announces that when the XHTML 2 Working Group charter expires as scheduled at the end of 2009…”

#24 · ·

Let’s Make The Web Faster

Two weeks after my last outcry regarding slowness on the Web there’s a more proactive response: Google launched code.google.com/speed, subtitled “let’s make the Web faster.”

#23 · · , ,