<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/98-css-unjccr6xl" -->

---
title: 98.css | daily.dev
description: 98.css is a CSS-only library that styles semantic HTML to look like Windows 98 UI components. It requires no JavaScript and works with any frontend framework....
canonical: https://daily.dev/posts/98-css-unjccr6xl
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: 98.css | daily.dev
og:description: 98.css is a CSS-only library that styles semantic HTML to look like Windows 98 UI components. It requires no JavaScript and works with any frontend framework....
og:url: https://daily.dev/posts/98-css-unjccr6xl
og:image: https://api.daily.dev/og/posts/UNjCCR6Xl.png
og:image:alt: 98.css
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# 98.css

**[Hacker News](https://daily.dev/sources/hn)** · 16 min read · 2 upvotes · 1 comments

## Summary

98.css is a CSS-only library that styles semantic HTML to look like Windows 98 UI components. It requires no JavaScript and works with any frontend framework. The library covers buttons, checkboxes, radio buttons, group boxes, text inputs, sliders, dropdowns, windows with title bars and status bars, tree views, tabs, table views, progress indicators, and field borders. Accessibility is a primary goal, relying on semantic HTML elements and aria-label attributes. It can be installed via npm or imported from unpkg.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://jdan.github.io/98.css>

## Community take

How the wider developer community reacted, aggregated from 6 discussions and 1124 comments across hackernews, lobsters (as of 2026-07-24).

**TL;DR:** The Hacker News community is warmly nostalgic about 98.css and the Windows 9x/XP aesthetic, with the author's burnout-recovery origin story adding to the goodwill; side threads get heated over whether modern UIs hiding scrollbars is a usability regression or a reasonable trade-off.

**Sentiment:** 55% positive · 30% mixed · 15% skeptical

**The case for**

- Commenters appreciate the project's artisanal, hand-crafted code and its nostalgic faithfulness to the Win98 look.
- Several users noted they have already wrapped real projects in 98.css, praising its practical utility.
- The information-dense, low-padding style of classic UIs is seen by many as more honest and respectful to users than modern bloated layouts.
- Companion projects like XP.css and 7.css were enthusiastically shared as complementary resources.

**The pushback**

- The library lacks dark-mode support, which commenters noted is ironic given that even Windows 98 had no proper dark mode.
- Some commenters argued the Win95/XP aesthetic was crude or 'Fisher-Price' even in its day, driven more by nostalgia than genuine design merit.
- The broader trend of browsers (especially Chrome) abandoning OS-native widget styling is seen as eroding UI consistency across the ecosystem.
- Modern 'flat design' whitespace inflation is blamed on touch-interface catering and unreplicated accessibility research, not genuine usability gains.

**By community**

- hackernews (positive): Overwhelmingly warm reception with the author's personal backstory resonating strongly, though substantial side debates on scrollbar visibility and modern UI regression kept the thread lively.
- lobsters (mixed): No comments were available to assess the Lobsters community's take.

**Hottest debate:** Whether always-visible scrollbars are a fundamental usability affordance or unnecessary screen-space waste that billions of users already live without.

**Open questions**

- Will 98.css ever add a proper dark-mode variant faithful to a period-accurate Windows color scheme?
- Is the modern trend toward low-information-density UI driven by genuine user research or by designer aesthetics and advertiser incentives?
- Could OS vendors or browser standards bodies define a coherent, system-integrated default CSS theme to replace the Bootstrap-as-default-web-style status quo?

**Highlights**

> Author here! This was my burnout recovery project and holds a place near and dear to my heart. https://notes.jordanscales.com/98-css-reflections
> — [jordanscales on hackernews · 13 comments](https://news.ycombinator.com/item?id=49030043)

> Fashion is cyclical. At one point people will get bored of these ambiguous modern UI with hidden fields and gestures, and made of 50 shades of light grey that only a calibrated display can render with any discernable contrast. And we will rediscover the merit of clear and explicit UIs, and Apple will claim it just invented it!
> — [cm2187 on hackernews · 3 comments](https://news.ycombinator.com/item?id=22943580)

> > Why do we even need always visible scroll bars? They just take screen space and billions of people do fine without them on Macs and mobile OSes. Don't get me started. Pros of a proper always-present scrollbar with appropriately-styled thumb: - It indicates that the thing you're viewing even is scrollable. - You can see at once where you are in a document, and how large it is relative to your viewport. - It offers a convenient UI to scroll in both small or large amounts, or scroll to the very top or bottom. For lots of uses the scroll wheel on your mouse is a substitute, but certainly not for everything. Cons: - It takes a tiny bit of screen real estate - It offends some people's esthetics taste, I guess
> — [roelschroeven on hackernews](https://news.ycombinator.com/item?id=22947311)

> In both of these as well as submission link, one of the things that is clearly and strikingly different from modern UI is the lack of very abundant amount of padding space. I think it's almost the mantra that we need breathing room, e.g., between different options in a radio-group box list of items... but I find lesser space (as was characteristic of older UI's) to be more honest... more respectful to me as an end-user, more information-dense. I don't want to discard whatever innovation has been done, but man I find myself being nostalgic of old UI quite often.
> — [pen2l on hackernews · 4 comments](https://news.ycombinator.com/item?id=42061613)

> I'm convinced designers have since long overthrown human-machine interaction experts, and usability consistently went down in the search for what's visually appealing and cleaner. I particularly blame Apple as a trend-setter in this, along with everyone that dumbly followed the fashion. No appeal to authority will ever convince me that disappearing scroll indicators are good for me, as I've been burned by them and I see less  able people around me having ever increasing difficulty navigating modern interfaces thanks to similar innovations.
> — [noisem4ker on hackernews](https://news.ycombinator.com/item?id=22944597)

**Source threads**

- [hackernews](https://news.ycombinator.com/item?id=49028927) · 270 points · 162 comments
- [hackernews](https://news.ycombinator.com/item?id=22940564) · 838 points · 414 comments
- [hackernews](https://news.ycombinator.com/item?id=33310554) · 606 points · 358 comments
- [hackernews](https://news.ycombinator.com/item?id=42056918) · 471 points · 184 comments
- [hackernews](https://news.ycombinator.com/item?id=22947020) · 1 points · 0 comments
- [lobsters](https://lobste.rs/s/uvje0r/98_css_design_system_for_building) · 48 points · 6 comments

## Similar posts on daily.dev

- [7 Game-Changing Web UI Features You Can Start Using Today](https://daily.dev/posts/7-game-changing-web-ui-features-you-can-start-using-today-lanxczirv) · Amit Merchant · 2 upvotes · 0 comments
- [CSS in 2026: The new features reshaping frontend development](https://daily.dev/posts/css-in-2026-the-new-features-reshaping-frontend-development-rhaxhc6ob) · LogRocket · 7 upvotes · 0 comments
- [readable.css](https://daily.dev/posts/readable-css-6qx9namtm) · Lobsters · 3 upvotes · 0 comments
- [Stop Using JS for Everything: Harnessing the Power of Pure CSS in 2026](https://daily.dev/posts/stop-using-js-for-everything-harnessing-the-power-of-pure-css-in-2026-jql9shws1) · Ruby Flow · 6 upvotes · 0 comments

---

Tags: [#webdev](https://daily.dev/tags/webdev), [#css](https://daily.dev/tags/css), [#html](https://daily.dev/tags/html), [#accessibility](https://daily.dev/tags/accessibility)

[View this post on daily.dev](https://daily.dev/posts/98-css-unjccr6xl)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"98.css","url":"https://daily.dev/posts/98-css-unjccr6xl","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/98-css-unjccr6xl"},"datePublished":"2026-07-24T00:07:08.826Z","dateModified":"2026-07-24T07:21:50.660Z","description":"98.css is a CSS-only library that styles semantic HTML to look like Windows 98 UI components. It requires no JavaScript and works with any frontend framework....","image":"https://media.daily.dev/image/upload/s--qPvKM23u--/f_auto/v1722860399/public/Placeholder%2009","thumbnailUrl":"https://media.daily.dev/image/upload/s--qPvKM23u--/f_auto/v1722860399/public/Placeholder%2009","isAccessibleForFree":true,"articleSection":"Hacker News","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Hacker News","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/hn","url":"https://daily.dev/sources/hn"},"commentCount":1,"discussionUrl":"https://daily.dev/posts/98-css-unjccr6xl","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":2},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":1}],"keywords":"webdev,css,html,accessibility","timeRequired":"PT16M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Hacker News","item":"https://daily.dev/sources/hn"},{"@type":"ListItem","position":3,"name":"98.css"}]}
```

