Simon Willison’s Weblog

Subscribe
Atom feed for web-standards

42 posts tagged “web-standards”

2025

Backstory on the default styles for the HTML dialog modal. My TIL about Styling an HTML dialog modal to take the full height of the viewport (here's the interactive demo) showed up on Hacker News this morning, and attracted this fascinating comment from Chromium engineer Ian Kilpatrick.

There's quite a bit of history here, but the abbreviated version is that the dialog element was originally added as a replacement for window.alert(), and there were a libraries polyfilling dialog and being surprisingly widely used.

The mechanism which dialog was originally positioned was relatively complex, and slightly hacky (magic values for the insets).

Changing the behaviour basically meant that we had to add "overflow:auto", and some form of "max-height"/"max-width" to ensure that the content within the dialog was actually reachable.

The better solution to this was to add "max-height:stretch", "max-width:stretch". You can see the discussion for this here.

The problem is that no browser had (and still has) shipped the "stretch" keyword. (Blink likely will "soon")

However this was pushed back against as this had to go in a specification - and nobody implemented it ("-webit-fill-available" would have been an acceptable substitute in Blink but other browsers didn't have this working the same yet).

Hence the calc() variant. (Primarily because of "box-sizing:content-box" being the default, and pre-existing border/padding styles on dialog that we didn't want to touch). [...]

I particularly enjoyed this insight into the challenges of evolving the standards that underlie the web, even for something this small:

One thing to keep in mind is that any changes that changes web behaviour is under some time pressure. If you leave something too long, sites will start relying on the previous behaviour - so it would have been arguably worse not to have done anything.

Also from the comments I learned that Firefox DevTools can show you user-agent styles, but that option is turned off by default - notes on that here. Once I turned this option on I saw references to an html.css stylesheet, so I dug around and found that in the Firefox source code. Here's the commit history for that file on the official GitHub mirror, which provides a detailed history of how Firefox default HTML styles have evolved with the standards over time.

And via uallo here are the same default HTML styles for other browsers:

# 16th March 2025, 4:36 pm / css, web-standards, html, chrome, firefox

TIL: Styling an HTML dialog modal to take the full height of the viewport. I spent some time today trying to figure out how to have a modal <dialog> element present as a full height side panel that animates in from the side. The full height bit was hard, until Natalie helped me figure out that browsers apply a default max-height: calc(100% - 6px - 2em); rule which needs to be over-ridden.

Also included: some spelunking through the HTML spec to figure out where that calc() expression was first introduced. The answer was November 2020.

# 14th March 2025, 11:13 pm / css, til, html, natalie-downe, web-standards

2024

Chrome's biggest innovation was the short release cycle with a silent unceremonious autoupdate.

When updates were big, rare, and manual, buggy and outdated browsers were lingering for soo long, that we were giving bugs names. We documented the bugs in magazines and books, as if they were a timeless foundation of WebDev.

Nowadays browser vendors can fix bugs in 6 weeks (even Safari can…). New-ish stuff is still buggy, but rarely for long enough for the bugs to make it to schools' curriculums.

Kornel Lesiński

# 9th July 2024, 10:43 am / web-standards, browsers, chrome

For some reason, many people still believe that browsers need to include non-standard hacks in HTML parsing to display the web correctly.

In reality, the HTML parsing spec is exhaustively detailed. If you implement it as described, you will have a web-compatible parser.

Andreas Kling

# 23rd June 2024, 11:59 pm / browsers, web-standards, html, andreas-kling, ladybird

“Wherever you get your podcasts” is a radical statement. Anil Dash points out that podcasts are one of the few cases where the dream really did work out:

“[...] what it represents is the triumph of exactly the kind of technology that’s supposed to be impossible: open, empowering tech that’s not owned by any one company, that can’t be controlled by any one company, and that allows people to have ownership over their work and their relationship with their audience.”

# 9th February 2024, 5:18 am / web-standards, rss, podcasts, anil-dash

2023

How we’re building a browser when it’s supposed to be impossible (via) Andreas Kling: “The ECMAScript, HTML, and CSS specifications today are (for the most part) stellar technical documents whose algorithms can be implemented with considerably less effort and guesswork than in the past.” The Ladybird project is such an inspiration, and really demonstrates the enormous value of the work put in by web standards spec authors over the last twenty years.

# 11th April 2023, 10:18 am / browsers, web-standards, andreas-kling, ladybird

Simple Push Demo (via) Safari 16.4 is out (upgrade to iOS 16.4 to get it) and the biggest feature for me is mobile support for Web Push notifications. This little demo tool was the first I found that successfully sent a notification to my phone: frustratingly you have to add it to your home page first in order to enable the feature. The site also provides a curl command for sending push notifications through the Apple push server once a token has been registered, which is the crucial step to figuring out how to build applications that can send out notifications to users who have registered to receive them.

# 27th March 2023, 8:48 pm / safari, web-standards, webpush

Igalia: the Open Source Powerhouse You’ve Never Heard of (via) An in-depth article about Igalia from July 2022. I had no idea how much stuff they had worked on: arrow functions, generators, async/await, MathML, CSS Grid and a whole bunch more.

# 16th January 2023, 8:28 pm / open-source, web-standards, igalia

2022

Supporting logical properties. A frustrating reminder from Jeremy Keith that Safari is not an evergreen browser: older iOS devices (1st gen iPad Air for example) get stuck on the last iOS version that supports them, which also sticks them with an old version of Safari, which means they will never get support for newer CSS properties such as inline-start and block-end. Jeremy shows how to use the @supports rule to hide this new syntax from those older browsers.

# 1st October 2022, 1:03 am / css, jeremy-keith, safari, ios, web-standards

Shoelace (via) Saw this for the first time today: it’s a relatively new library of framework-agnostic Web Components, built on lit-html and covering a huge array of common functionality: buttons and sliders and dialogs and drawer interfaces and dropdown menus and so on. The design is very clean, the documentation is superb—and it looks like you can cherry pick just the components you are using for a pretty lean addition to your page weight. So refreshing to see libraries like this that really take advantage of modern web standards.

# 20th August 2022, 8:57 pm / web-components, css, web-standards, javascript, lit-html

2018

Somebody should write up how the early-2000s push for open standards and the Web Standards Project’s advocacy are a major factor in why Apple was able to create its enormously valuable comeback. Put another way, one of the killer moments of the first iPhone demo was Jobs saying it had the “real” web, not the “baby” web, by demonstrating the NYT homepage. That would’ve been IE-only & Windows-only if not for effective advocacy from the web standards community.

Anil Dash

# 7th May 2018, 1:28 pm / anil-dash, apple, web-standards, web-standards-project

2010

Are there any web design conferences in Southeast Asia?

Our site, Lanyrd, lists a few:

[... 39 words]

2009

Dive Into HTML 5. Mark Pilgrim’s free online book on HTML 5—currently just one chapter on canvas (which neatly illustrates the coordinate system using a diagram rendered using canvas itself) but certain to become an invaluable resource for anyone looking to take advantage of HTML 5.

# 20th August 2009, 2:40 pm / mark-pilgrim, html5, web-standards, books, canvas

Microsoft was slowing development of new versions of Internet Explorer in the hope that Web-based applications would not be able to compete with Windows applications, and Windows applications would keep people locked in to the Windows operating system. Thus XHTML2 was developed with no expectation that the leading Web browser would ever implement it.

David Baron

# 8th July 2009, 8:30 pm / david-baron, xhtml, xhtml2, microsoft, ie, web-standards

Insofar as it encouraged workaday web professionals to recognize that there are such things as best practices independent of particular browser implementations, I think XHTML can be termed successful. Insofar as it got people thinking about the possibility of a better Web ahead of us, I think XHTML can be termed successful. Insofar as it changed the popular conception of professional web design and thrust standards into the forefront, I think XHTML can be termed successful.

James Bennett

# 8th July 2009, 7:36 pm / james-bennett, xhtml, web-standards

In defense of web developers. Zeldman: “The social benefit of rethinking markup sealed the deal. XHTML’s introduction in 2000, and its emphasis on rules of construction, gave web standards evangelists like me a platform on which to hook a program of semantic markup replacing the bloated and unsustainable tag soup of the day.”

# 7th July 2009, 3:52 pm / jeffrey-zeldman, web-standards, xhtml, markup, html5

Turns out, a lot of people are saddened by the loss of a spec they don’t understand, and if they did, would not bother using.

Assaf Arkin

# 6th July 2009, 9:02 pm / web-standards, assaf-arkin, html5, xhtml, xhtml2

Yes, it'd be nice if everyone kept up to date on the progress of the various W3C working groups. They don't. There are a lot of people who asked what professional markup looked like and were told (right or wrong) that XHTML was the future. So they went ahead and learned XHTML, built their websites and chose watching a DVD or spending time with their kids over watching Mark Pilgrim and Sam Ruby do battle over Postel's Law. Now all of a sudden they're told XHTML is dead. Some wailing and gnashing of teeth is to be expected. What's needed is less "boy aren't I smarter than them" snideness, and more Hey, here's what's up.

Alan Storm

# 4th July 2009, 12:51 pm / xhtml, html5, mark-pilgrim, sam-ruby, postelslaw, xhtml2, web-standards, w3c, alan-storm

Jeffrey Zeldman: XHTML WTF. Reading the comments, it’s scary how many people are totally ill-informed about HTML5 and XHTML5.

# 4th July 2009, 1:22 am / html5, xhtml5, jeffrey-zeldman, education, web-standards

FAQs about the future of XHTML. The XHTML 2 Working Group charter will not be renewed after 2009—as far as the W3C are concerned, XHTML5 is the future of XHTML.

# 3rd July 2009, 1:37 am / xhtml5, xhtml2, xhtml, w3c, web-standards

2008

Opera Web Standards Curriculum. Opera commissioned an impressive sequence of articles from a bunch of very talented people to help address the monstrous learning curve for modern client-side development.

# 8th July 2008, 2:22 pm / opera, web-standards, webstandardscurriculum, teaching

James Bennett: Why HTML. Finally, somewhere to point people when they ask why I avoid XHTML that’s a bit more up to date than Hixie’s rant from 2002.

# 18th June 2008, 12:27 pm / xhtml, james-bennett, html, ian-hickson, hixie, web-standards

Elliotte Rusty Harold: Why XHTML. “XHTML makes life harder for document authors in exchange for making life easier for document consumers.”—since there are a lot more document authors than there are tools for consuming, this seems like an argument AGAINST XHTML to me.

# 5th June 2008, 9:25 pm / elliotte-rusty-harold, xhtml, html, html5, web-standards

Why the webstandards world appears to be choosing Django. I’m not convinced that this is a definite trend, but it certainly makes for an interesting discussion.

# 4th April 2008, 8:33 am / django, web-standards, gareth-rushgrove, python

Ian's Acid 3, unlike its predecessors, is not about establishing a baseline of useful web capabilities. It's quite explicitly about making browser developers jump - Ian specifically sought out tests that were broken in WebKit, Opera, and Gecko, perhaps out of a twisted attempt at fairness. But the Acid tests shouldn't be fair to browsers, they should be fair to the web; they should be based on how good the web will be as a platform if all browsers conform, not about how far any given browser has to stretch to get there.

Mike Shaver

# 27th March 2008, 1:35 pm / mike-shaver, acid3, ian-hickson, webkit, opera, gecko, browsers, web-standards

Opera and the Acid3 Test. Screenshot shows 100/100 (live code or it didn’t happen!)—Opera’s codebase must be in extremely good shape to fix so many issues so quickly.

# 26th March 2008, 10:47 pm / opera, browsers, acid3, web-standards

We've decided that IE8 will, by default, interpret web content in the most standards compliant way it can. This decision is a change from what we've posted previously.

IEBlog

# 4th March 2008, 3 am / ie8, web-standards, internet-explorer, ie

Legacy. James Bennett has what I think is the most interesting analysis of the X-UA-Compatible header to date.

# 23rd January 2008, 2:14 pm / james-bennett, xuacompatible, internet-explorer, ie8, browsers, web-standards

If Web authors actually use this feature, and if IE doesn't keep losing market share, then eventually this will cause serious problems for IE's competitors — instead of just having to contend with reverse-engineering IE's quirks mode and making the specs compatible with IE's standards mode, the other browser vendors are going to have to reverse engineer every major IE browser version, and end up implementing these same bug modes themselves.

Ian Hickson

# 23rd January 2008, 10:07 am / ian-hickson, hixie, internet-explorer, ie8, xuacompatible, web-standards, browsers