When website like mine is visited by regular NPC then question "is this website broken?" is inevitable. If you ensure your reader that indeed everything is fine then you will get followup question "why it is so ugly?". The shock that plain HTML has on the viewer is strong. So let me tell you why I want it that way.
Text is my weapon of choice. It would NOT make any sense for artist to maintain website with strong emphasis on text content. But it works for me.
Further I use text based browsers. For example the
EWW (Emacs Web Wowser). There are few widely known TUI solutions
like: w3m,
Lynx and
Links.
Using any of those might be your choice or reality. Either way such
software displays mostly monospace text. Maintaining design becomes
pointless. Good structure and semantics of HTML document is all that
matters. You are quickly being reminded how important are the
alt
attributes in images when terminal text web browser
is used. Also text (and sound) is the only think that blind person
gets. So if you have good experience in text based browser then
disabled person will have not troubles browsing your site.
Whats more. In current world people don't read that much. It got to the point that reading and writing feels like a super power again. Often when information on specific topic is available only in documentation or specification of some sort then it's almost like a secret knowledge accessible to selected few. I like to exercise this idea that text content is no longer readable to most.
I'm lazy when it comes to managing dependencies. I did not wanted to use CMS software of any kind as sooner or later those demand your attention and require maintenance. I want to do as little as possible when hosting my website and when creating new blog entries. For those reasons I turned into plain HTML. You literally can't do less when creating a website.
Lack of CSS actually make website more lightweight, responsive and less broken in general. Case made by motherfuckingwebsite. It might seem strange for Web Developer to have a website with plain HTML but after working years with this stuff you just want to have a break and do as little as possible. Each post is a single plan HTML file with just few tags for links, paragraphs and headers. View page source to see for yourself.
The same can be said about JavaScript. There are even browsers and plugins that disable JS for security reasons. Some people will also disable JS for ideological reasons (free software, GNU, GPL etc.). Website that works without JavaScript is more accessible to those outsiders.
I already made a case for blind people and people that disables JavaScript in browser. My overall point is this: the less your website need to display content properly the more accessible it is. It will work on more devices in more software for more people.
Simple thing like zooming in and out can break many basic websites with just few lines of CSS. Change of colors to more subdued makes pages harder to read for person with sight problems or for device with poor display. Hover effects are almost unusable on touch screen devices. Using CMS make website easier to hack. Those are just a few examples of very simple and common thinks that are being done to websites making them less accessible reducing User Experience (UX).
And don't get me started on how fat websites are those days. Bigger size means worst accessibility for those with lesser internet connection. It almost seams like most of the internet is optimized for first class citizens only. But even their newest devices sweat at the thought of loading modern web pages. I'm still talking about websites, not web applications.
OFC it's possible to create beautiful site with CSS and JS that is not broken in any way and have most of the advantages that plain HTML has. Yet this is surprisingly difficult for most developers. It's not only the issue of skill. Often requirements from client or design is impossible to deliver without breaking website for someone. But the main reason is that very few people tries to make website that works for everyone. No one seams to care and most are ignorant by choice.
In contrast to most I don't want to attract attention. Most websites are designed nicely, tries to be unique, be memorable, follow trends, try new things etc. I desire exact opposite. Because of that I'm making website as unattractive as possible. Similar to what Brutalist Websites are doing.
Also because of that I'm writing mostly on sites hosted using Gopher and Gemini protocols. Those are unknown and unfamiliar to general audience.
Today I still use some CSS with no plans to join nocss.club any time soon. There are no default styles in browsers for dark mode which is very popular those days. I feel obligated to support that. The lack of constrain for lines width in text by default is also problematic because screen are very wide and it's common to run browsers full screen.
With plain HTML there is a problem with separation between page
sections. Tags like header, main, article, section and footer are
great for semantics but have no visual representation in default plain
HTML. For example the <hr>
tag should be used as
semantic separation on paragraphs level and not as mean to display
horizontal line.
From MDN <hr>: The Thematic Break (Horizontal Rule) element:
Historically, this has been presented as a horizontal rule or line. While it may still be displayed as a horizontal rule in visual browsers, this element is now defined in semantic terms, rather than presentational terms, so if you wish to draw a horizontal line, you should do so using appropriate CSS.
While it makes sense from modenr browse perspective this approach does not work in text web browsers. Tags like header, main and footer are simply ignored and using Horizontal Rule is the only way of separating content visually that differs from regular header tag.
There is still hope that one day it will be possible to host
perfect website without any styles. For example Chrome has
experimental flag chrome://flags/#enable-force-dark
that
can try to use dark mode on plain websites like mine. And as for the
text max width. Most of the people browse internet from mobile
phones. There is no need for max width limit on those devices. So
maybe I will get ride of CSS one day. But this is not this day.