Tech is political: The people under attack in Palestine 🇵🇸, Iran 🇮🇷, and Lebanon 🇱🇧 are people like us. They’re our brothers and sisters, too. Read up on their history, scrutinize what you’re told, and demand respect and accountability. Hide

Frontend Dogma

“html” News Archive (2)

Entry (Sources) and Additional TopicsDate#
HTML Whitespace Is Broken (dev)1854
whitespace
Semi-Annual Reminder to Learn and Hire for Web Standards (aar)1853
learning, fundamentals, standards, css
Headings (web)1852
headings, accessibility
Paragraphs (sco)1851
accessibility
What the Heck Is ARIA? A Beginner’s Guide to ARIA for Accessibility (a11)1850
videos, guides, aria, accessibility
The “aside” Element (hey)1849
semantics, accessibility
What’s Missing From HTML and CSS? (rac)1848
css
The Secret Inside One Million Checkboxes1847
databases, community
Make Me One (Input) With Everything (mor/mat)1846
forms, accessibility, simplicity
What Skills Should You Focus on as Junior Web Developer in 2024? (fro)1845
career, fundamentals, css, javascript, frameworks, tooling, learning, link-lists
How to Easily Add Dark Mode to Your Website1844
how-tos, dark-mode, css, javascript, functionality
Is Using “aria-label” to Add Alternative Text but No “alt” Attribute Still a WCAG Fail?1843
discussions, accessibility, attributes, forms, labels, aria, alt-text, images
Raw-Dogging Websites (bra)1842
css, javascript, tech-stacks
Spoiler Alert: It Needs to Be Accessible (sco)1841
accessibility, web-components, aria
The Top Programming Languages 2024 (iee)1840
programming, comparisons, python, java, javascript, typescript, sql, go, php, lua
Foundations: Labelling Text Fields With Input and Label (tet)1839
accessibility, fundamentals, forms, labels
Expert Guide: Writing HTML for Screen Reader Users (flo/a11)1838
guides, accessibility, aria, alt-text, writing, screen-readers
Top 5 HTML Features You’re Not Using (but Should Be)1837
How Are the “colspan” and “rowspan” Attributes Different? (geo/css)1836
attributes, tables
How Does the Browser Render HTML? (and)1835
browsers, browser-engines, rendering, dom, css, cssom, painting
“blocking=render”: Why Would You Do That?! (css)1834
performance, rendering
Rote Learning HTML & CSS (j9t/fro)1833
books, frontend-dogma, css, learning
The “address” Element (hey)1832
semantics
Action Web Components Which Span the Server-Client Divide (jar)1831
web-components, apis
ObsoHTML, the Obsolete HTML Checker (j9t)1830
packages, npm, quality
The “abbr” Element (hey)1829
semantics, accessibility
Minify JavaScript and CSS Code for a Faster Website (mat/deb)1828
performance, minification, javascript, css, lighthouse
HTML Web Components Can Have a Little Shadow DOM, as a Treat (sco)1827
web-components, shadow-dom, dom
The Anchor Element (hey)1826
links, semantics, terminology, usability
The Anatomy of Accessible Forms: Best Practices (deq)1825
accessibility, forms, best-practices
HTML Web Components Make Progressive Enhancement and CSS Encapsulation Easier (css)1824
web-components, principles, solid, progressive-enhancement, examples
Replacing jQuery UI Datepicker With HTML Date Input (chr)1823
jquery
Pop(over) the Balloons (css)1822
disclosure-widgets, pop-overs, css
Learn Web Components (and)1821
websites, courses, web-components, css, dom, javascript
Don’t Use JS for That: Moving Features to CSS and HTML (kil/jsc)1820
videos, javascript, css
Named Alternates for WordPress (ede)1819
wordpress
What ARIA Still Does Not Do (ste)1818
aria, accessibility, standards
An Update on Invokers: Invoker Commands in HTML (uti)1817
modals, pop-overs
How to Parse HTML in JavaScript (api)1816
how-tos, parsing, javascript
Mythbusting DOM: Was DOM Invented Alongside HTML?1815
myths, dom, history
Are Web Components Worth It? (jaf+)1814
podcasts, web-components, dom, shadow-dom
A Rant About Front-End Development1813
content, css, javascript, preprocessors, frameworks, complexity
Know the “search” Element (j9t)1812
semantics
HTML Markup Explained: Building Blocks of Modern Web Pages1811
fundamentals
Streaming HTML—Asynchronous DOM Updates Without JavaScript (inf)1810
asynchrony, dom, streaming
Ditch the Pixels: The Small and Vectorized Web (yor)1809
svg, images
HTML Cheat Sheets: From Basics to Advanced Elements1808
fundamentals, semantics, examples, cheat-sheets
The Ultimate Guide to Iframes (log)1807
guides, iframes, javascript, security
Doing My Heading In (ste+)1806
interviews, headings, accessibility
Maybe Don’t Name That Landmark (aar)1805
semantics, accessibility
Reflection and Custom States in Web Components (cla)1804
web-components
Fine-Tuning Text Inputs (gar)1803
forms, attributes, usability
Semantic Code in HTML: What Is It and Does It Still Matter? (boa)1802
semantics, accessibility, seo, maintainability, performance
Responsive Video Works Now—These Features Could Make It Work Better (sco)1801
multimedia, responsive-design, performance
Alt Left (ste)1800
accessibility, images, alt-text, anti-patterns
Here’s What We Learned From the First “State of HTML” Survey (sac/fro)1799
lessons
Progressively Enhanced Popover Toggletips (mic)1798
pop-overs, apis, progressive-enhancement
Multipage Version (wil)1797
websites
Switching It Up With HTML’s Latest Control (sma)1796
forms
HTML Tags You Might Not Know About1795
Not So Short Note on “aria-label” Usage—Big Table Edition (ste)1794
accessibility, aria, labels
When Should We Use Components and When Should We Just Use HTML? (chr)1793
components, web-components
Test-Driving HTML Templates (xpm/mfo)1792
templates, testing, server-side-rendering, conformance
We Need to Talk More About Conformance, if We Want to Stop Fantasy HTML (j9t)1791
conformance, craft, quality
“<style>”: Inline Optimizations for the Bold (mor)1790
css, performance, optimization
Ignore and Acknowledge “class” Attribute on Elements in CSS (ami)1789
css, attributes
The Latest in Web UI (una)1788
videos, css, layout, effects
State of HTML 2023 [Results] (sac+/dev)1787
surveys, metrics
Upgrade Your HTML V (j9t/fro)1786
books, frontend-dogma, minimalism, craft, conformance
Using the Popover API for HTML Tooltips (chr/fro)1785
pop-overs, apis, tooltips
Using Simple Tools as a Radical Act of Independence1784
css, simplicity
Combining CSS “:has()” and HTML “<select>” for Greater Conditional Styling (ami/sma)1783
css, selectors, techniques
Popover API Is Here (chr/fro)1782
apis, pop-overs
My Approach to HTML Web Components1781
web-components
Design Déjà Vu (mal)1780
design, css, history, comparisons
The HTML, CSS, and SVG for a Classic Search Form (chr/fro)1779
search, forms, css, svg
HTML Attributes vs. DOM Properties (jaf)1778
attributes, dom, comparisons
How to Escape JavaScript for a Script Tag1777
how-tos, javascript, escaping
Images as the First Thing in a Button or Link (tem)1776
accessibility, images, buttons, links
Invoking Elements by Using Only HTML: A First Look at Invokers (uti)1775
modals, pop-overs
My Code Formatting Guidelines (val)1774
guidelines, formatting, conventions, javascript, prettier, configuration
Converting Plain Text to Encoded HTML With Vanilla JavaScript (sma)1773
conversion, javascript
The Biggest Lie in HTML1772
videos
Making Disabled Buttons More Accessible1771
accessibility, buttons, aria
ARIA in HTML (sco+/w3c)1770
standards, accessibility, aria
Don’t Use the “maxlength” Attribute to Stop Users From Exceeding the Limit (ada)1769
attributes, forms, usability
My “Skip to Content” Markup Was Breaking the Back Button on iOS (db)1768
skip-links, accessibility, mobile
The Dos and Don’ts of Using “tabindex” in Web Design (a11)1767
accessibility, keyboard-navigation
Figma Prototypes vs. HTML Prototypes (ada)1766
design, processes, prototyping, figma, comparisons
Faster Websites With the “picture” Element (fra)1765
images, performance
Testing HTML With Modern CSS (hey)1764
css, testing, quality
How to Think About HTML Responsive Images (db)1763
how-tos, images, responsive-design
21 HTML Tips You Must Know About1762
tips-and-tricks
When to Use “tabindex="0"” (gra/tet)1761
accessibility, keyboard-navigation, focus
Svelte Parses HTML All Wrong (ric)1760
svelte, parsing
How-To: 5 Steps to Detect Invalid HTML Breaking Your [Site’s Performance] (erw)1759
how-tos, conformance, performance
Kobold Letters (wed)1758
email, support
On “disabled” and “aria-disabled” Attributes (kit)1757
accessibility, attributes, aria
How Invalid HTML Elements Impact Web Performance (erw)1756
conformance, performance
On Popover Accessibility: What the Browser Does and Doesn’t Do (hdv+)1755
accessibility, pop-overs
The Problem With Data Attributes for Text Effects (man)1754
custom-data, css, typography, effects
HTML Performance Optimization: Tips for Faster Loading Pages1753
landing-pages, performance, optimization, tips-and-tricks
Ruby Is Complicated1752
Distinguishing Between ARIA and Native HTML Attributes (deq)1751
aria, attributes, accessibility, comparisons
Streaming HTML (chr/fro)1750
php, streaming
CSS Button Styles You Might Not Know (dbu)1749
css, buttons
The Quiet, Pervasive Devaluation of Frontend (col)1748
css, craft, career, community
Making Room for Long List Markers With Subgrid (nol)1747
lists, css, grids
Techniques to Break Words (aar)1746
techniques, css, content
An HTML Switch Control (ann+/web)1745
css, forms
YouTube Video Embedding Harm Reduction (jvo)1744
multimedia, embed-code, youtube, privacy
ARIA (Are Ya) Afraid of the Dark? Unmasking Common HTML Monsters to Create Better User Experiences (deq)1743
videos, accessibility, aria, user-experience
Filling Gaps With a Polyfill (jay)1742
polyfills, css, javascript, history
HTML as the Baseline (cfe)1741
progressive-enhancement
“X” Marks the Spot: Landmark Elements (stv)1740
semantics, accessibility, assistive-tech, aria
HTML Attributes That Every Web Developer Should Know1739
attributes, pop-overs, forms, custom-data
Practice Safe DSD With “setHTMLUnsafe” (It’s Complicated) (jar/van)1738
dom, shadow-dom, apis, security
A Highly Configurable Switch Component Using Modern CSS Techniques (bel/pic)1737
css
HTML Web Components on the Server Are Great (sco)1736
web-components
Check for “accesskey” and “aria-keyshortcuts” Bookmarklet (ste)1735
bookmarklets, accessibility, aria, keyboard-shortcuts
Unlocking the Power of HTML’s Native Browser “dialog” Element (ope)1734
modals
Mind the Accessibility Gaps—Most of Accessibility Issues Originate in Design and How to Fix That (cer)1733
accessibility, design, aria
A Call for Consensus on HTML Semantics (5t3)1732
semantics
The Color Input and the Color Picker (chr/fro)1731
colors, usability
Create a Currency Converter With HTML, CSS, and Vanilla JavaScript1730
functionality, css, javascript
Basic Accessibility Mistakes I Often See in Audits (cfe)1729
accessibility, mistakes, auditing, semantics, focus, links, buttons
Web Standards: The Guidelines That Every Developer Should Know1728
standards, history, w3c, css, xml, wcag
Disable Browser Caching With “meta” HTML Tags1727
metadata, caching
Options for “optgroup” Labeling of “options” (ste)1726
accessibility, forms, browsers, screen-readers, support
Using “abbr” Element With “title” Attribute (aar)1725
attributes, accessibility, browsers, assistive-tech, support
Accounting for Internationalization With CSS and HTML (spa)1724
css, internationalization
Buttons and Links—Common Misconceptions1723
accessibility, semantics, buttons, links
Streaming HTML Out of Order Without JavaScript1722
streaming
Why I Like Web Components1721
web-components
Stop Closing Void Elements (j9t)1720
HTML Validation—Pros and Cons1719
conformance
Never Underestimate HTML (lar/mat)1718
user-experience, developer-experience
The Devil Is in the Details: A Look Into a Disclosure Widget Markup (its/mat)1717
disclosure-widgets, css, javascript
“HTML First” Is Not HTML First (j9t)1716
principles, quality, craft
The Implied Web (hws/mat)1715
accessibility, semantics
Recapturing Early-Internet Whimsy With HTML (tec)1714
trends, design, art, decoration
The Road to HTMHell Is Paved With Semantics (pep/mat)1713
semantics, quality
You Might Be Looking for HTML “article”, Not “section” (san)1712
semantics
Revisiting Fundamentals—Semantic Lists for Improved Accessibility (mis/mat)1711
fundamentals, semantics, accessibility
Web Components (may/5t3)1710
web-components, shadow-dom, dom
HTML Can Do This?1709
The Ghosts of Markup Past (tho/mat)1708
web, history
HTML: The Bad Parts (may/mat)1707
Embrace the Platform (bra)1706
web-platform, css, javascript, resilience, progressive-enhancement, craft
Test-Driven HTML and Accessibility (mat)1705
accessibility, testing, javascript
“innerHTML” vs. “innerText” vs. “textContent”—What's the Difference? (fre)1704
dom, javascript, comparisons
The “hidden” Attribute in HTML (ahm/mat)1703
attributes
Behavior Belongs in the HTML1702
javascript, principles
Media Queries in HTML Video (aar)1701
multimedia, css, media-queries, accessibility
What the Slot? (dut/mat)1700
web-components, dom, shadow-dom
Security Headers Using “<meta>” (sap/mat)1699
security, csp
“sizes=auto” Pretty Much Requires “width” and “height” Attributes (eee)1698
attributes, images, maintainability
The Hellish History of HTML: An Incomplete and Personal Account (cra/mat)1697
history
Back to Basics: 5 HTML Attributes for Improved Accessibility and User Experience (dni/mat)1696
fundamentals, attributes, accessibility, user-experience
The “form” Attribute—Enhancing Form Layout Flexibility (mat)1695
forms, attributes
The UX of HTML (vas/mat)1694
semantics, user-experience
How to Use Responsive HTML Video (…and Audio!) (sco)1693
how-tos, responsive-design, multimedia
HTML Compression on Popular Websites (dvk)1692
compression, gzip, brotli, metrics
Weird HTML Hacks (ern)1691
css, hacks, techniques, history
The Elevator Pitch for Web Components (cfe)1690
web-components, dom
Shadow DOM Is for Hiding Your Shame1689
shadow-dom, dom, web-components
The 9 HTML Elements That Have an Attribute of the Same Name, or: The 9 Attributes That Have an Element of the Same Name (j9t)1688
attributes
An Attempted Taxonomy of Web Components (zac)1687
web-components
HTML Web Components Are Just JavaScript? (mia/odd)1686
web-components, javascript
Exclusive Accordions Exclude (yat)1685
accessibility, accordions
Using Chrome’s Accessibility Tree for Manual Testing of HTML and ARIA (rus)1684
videos, browsers, chrome, dev-tools, accessibility, testing, aria
HTML Web Components (jim)1683
web-components
HTML First1682
websites, principles
Do You Really Need to Validate Your HTML Code?1681
discussions, conformance
Understanding HTML Landmarks and How to Apply Them (its/log)1680
semantics, accessibility, aria
HTML Web Components1679
web-components, web-platform
13 HTML Attributes You Should Know About1678
attributes
Removing List Styles Without Affecting Semantics (mat)1677
css, semantics, accessibility
Markdown to HTML in Seconds: Discovering mdhub (gli)1676
markdown, conversion, tooling
The Anatomy of an Accessible Button1675
buttons, accessibility, aria
Don’t Turn a Table Into an ARIA Grid Just for a Clickable Row (aar)1674
tables, grids, aria, accessibility
2023: 0 of the Global Top 100 Websites Use Valid HTML (j9t)1673
css, conformance, metrics, quality
Let’s Reinvent the Wheel (vas)1672
css, user-experience, accessibility, web-platform
HTML vs. DOM? Let’s Debug Them (jec)1671
videos, dom, debugging, comparisons
20 Simple Ways to Style the HTML “details” Element (ral)1670
disclosure-widgets, css
HTML Meta Tags1669
metadata
Splitting Within Selects (aar)1668
accessibility, forms, browsers, support
Select Element: Now With Horizontal Rules (una)1667
forms, semantics, browsers, chrome, safari, support
Tailwind vs. Semantic CSS1666
tailwind, css, semantics, comparisons, performance
Strikethrough Accessibility (den)1665
accessibility, screen-readers, support
Using ChatGPT for Smart Truncation in Responsive Web Design1664
content, responsive-design, ai, chatgpt
Why Unique ID Attributes Matter (deq)1663
accessibility, attributes, conformance
On the Uniting Power of a Commitment to HTML Conformance (j9t)1662
conformance, quality, community, web
Does the HTML “hr” (Horizontal Rule) Benefit Screen Reader Users?1661
accessibility, screen-readers
CSS Findings From Photoshop Web Version (sha)1660
css, photoshop, case-studies
The Selected Date Must Be Within the Last 10 Years (ger/clo)1659
forms, validation
Extending the Properties of an HTML Element in TypeScript1658
components, typescript
An Anchored Navbar Solution (mey)1657
css, navigation
The Most Minimal Valid HTML Document (j9t)1656
minimalism, conformance, templates
Easy Dark Mode With “color-scheme” (sar)1655
slides, dark-mode, css, accessibility
Stop Using JS for That: Moving Features to CSS and HTML (kil)1654
videos, javascript, css
How Mastodon Handles Images and Web Previews (rba)1653
social-media, mastodon, open-graph, metadata, images
HTML Popover, Videos, and “display:blackhole” (bru)1652
pop-overs, videos
Misconceptions Can Kill Accessibility Momentum (yat)1651
accessibility, processes
State of HTML 2023 (sac+/dev)1650
surveys
What Makes an Accessible Date Picker? Is It Even Possible? (rus/inc)1649
videos, accessibility
How to Use the New “<search>” Element With WordPress (ede)1648
how-tos, wordpress
What Can You Do With “data” Attributes? (cfe)1647
custom-data, javascript
State of Web Accessibility, ARIA in HTML, and Missing UI Patterns (tin+/fwo)1646
podcasts, accessibility, aria
Browser Video Players Review (aar)1645
multimedia, accessibility, browsers, screen-readers, support
10 Things You Didn’t Know About HTML1644
Dialog Dilemmas and Modal Mischief: A Deep Dive Into Popovers and How to Build Them (hdv)1643
slides, pop-overs, modals, deep-dives
Small Details to Improve Your Website’s Experience (alv)1642
user-experience, css, metadata
Let’s Make a Rubber Button With HTML, CSS, and SVG (tyl/clo)1641
buttons, css, svg, images
Main-ly Speaking (col)1640
accessibility
XUL and HTML (moz)1639
xul, comparisons
An Intro to the “dialog” Element (cfe)1638
introductions, modals, semantics
Supercharge Your HTML With WebC1637
videos, webc
Progressively Enhanced HTML Accordion (aar)1636
accordions, semantics, accessibility, progressive-enhancement
8 Common Heading Questions (pop)1635
accessibility, headings
Progressively Enhanced Form Validation: HTML and CSS (ger/clo)1634
forms, validation, progressive-enhancement, css
Responsive Images: DIY Implementation in 6 Steps1633
images, responsive-design
A Blog Post With Every HTML Element (pat)1632
semantics
Contextual Form Errors and ARIA (mar)1631
accessibility, forms, aria
I’m Betting on HTML1630
semantics
You Probably Don’t Need “http-equiv” Meta Tags (rvi)1629
metadata, http, performance
Help Design the Inaugural “State of HTML” Survey (lea)1628
community
Blockquotes in Screen Readers (aar)1627
accessibility, screen-readers, support
I Blame the W3C’s HTML Standard for Ordered Lists (sid)1626
lists, semantics
O “dialog” Focus, Where Art Thou? (mat)1625
accessibility, modals, focus
Preload vs. Early Hints vs. Fetch Priority1624
videos, performance, http, hints, comparisons, preloading
All the Places Where You Can Use “prefers-color-scheme” Media Query (ami)1623
css, media-queries, javascript, dark-mode
The Case Against Self-Closing Tags in HTML (jaf)1622
How to Validate HTML On-Line at W3C (wie)1621
how-tos, conformance, tooling
The “article” Element and Screen Readers (mat)1620
screen-readers, accessibility, support
And 4 More HTML Concepts You Didn’t Know (j9t)1619
concepts, web-components
The “details” Element and In-Page Search (mat)1618
disclosure-widgets, search, browsers, user-experience
Under-Engineered Comboboxen? (aar)1617
forms, css, accessibility
Form and Search Landmarks (mat)1616
aria, forms, browsers, assistive-tech, support
What Does the Image “decoding” Attribute Actually Do? (tun)1615
attributes, images, performance
Button Types1614
buttons
Django: A Security Improvement Coming to “format_html()” (ada)1613
django, security
HTML Imports (w3c)1612
You Can Stop Using “user-scalable=no” and “maximum-scale=1” in Viewport Meta Tags Now1611
viewport, metadata, accessibility, responsive-design
Assume the Position—a Labeling Story (llo/tpg)1610
accessibility, forms, labels
What Is Open Graph? How to Use It for Your WordPress Website?1609
how-tos, open-graph, social-media, wordpress
Semantic Code in HTML: What Is It and Does It Still Matter? (boa)1608
semantics
21 Awesome Web Features You’re Not Using Yet (fir)1607
videos, css, javascript
Brief Note on Popovers With Dialogs (aar)1606
support, accessibility, pop-overs, modals
11 HTML Best Practices for Login and Sign-Up Forms (sit/evi)1605
best-practices, forms
Querying Parsed HTML in BigQuery (rvi)1604
Introducing the Popover API (una)1603
introductions, apis, pop-overs
Be Careful Using “Menu” (aar)1602
aria, design, terminology
How to Build Lean Efficient Websites in 2023 (cfe)1601
how-tos, progressive-enhancement, minimalism
Fieldsets, Legends, and Screen Readers Again (ste/tpg)1600
accessibility, forms, screen-readers
Semantics and the “popover” Attribute: What to Use When? (hdv)1599
attributes, semantics, accessibility, pop-overs
Using HTML Landmark Roles to Improve Accessibility (sch/mdn)1598
accessibility
HTML Landmark Roles Screen Reader Demo (sch/mdn)1597
videos, accessibility, screen-readers, voiceover
Screen Readers Don’t Announce When the User Reaches the “maxlength” Character Limit (sim)1596
accessibility, screen-readers, support
Respect Your Children (ste/tpg)1595
accessibility, aria
How Large DOM Sizes Affect Interactivity, and What You Can Do About It (mal)1594
performance, dom, optimization
Client-Side Rendering of HTML and Interactivity (mal)1593
performance, client-side-rendering
How “x-default” Can Help You (met)1592
internationalization, urls, attributes, search, google
How Far Back in Time Can I Take My Website’s Design1591
web, design, history, css
Short Note: Why Isn’t “role=presentation”/“none” Allowed on Focusable Elements? (ste)1590
accessibility, focus, aria
Considering Content Warnings in HTML (aar)1589
content, dei
“details”/“summary” Inconsistencies (mat)1588
disclosure-widgets, browsers, assistive-tech, support
It’s Very Likely That… (mat)1587
semantics, buttons, modals
The “details” Element Is Amazing (fon)1586
disclosure-widgets
HTML Accessibility API Mappings 1.0 (ste+/w3c)1585
accessibility, apis
HTML Dark Mode (bt)1584
dark-mode
New HTML Element: “search” (alv)1583
semantics
What Is Semantic HTML? (dav)1582
semantics
Five Pieces of Advice for More Accessible Websites (cit)1581
accessibility, tips-and-tricks
Modern HTML Email (Tables No Longer Required) (oll)1580
email, tables
On-Page SEO Checklist: The Complete Task List for 2023 (sem)1579
seo, checklists, semantics
HTML: Help Users to Download Files With the HTML “download” Attribute1578
attributes
Fighting Inter-Component HTML Bloat (eli)1577
components, semantics, quality
Getting Started With HTML Tables1576
tables, introductions
The “search” Element (sco)1575
accessibility, semantics
The End of Front-End Development (jos)1574
outlooks, career
The H1 Conundrum: Understanding the Challenges of Heading Level One1573
accessibility, semantics, headings
Progressively Enhancing a Table With a Web Component (ray)1572
javascript, tables, web-components, progressive-enhancement
File Uploads for the Web: Uploading Files With HTML (aus)1571
file-handling
The Broken Promise of Atomic CSS1570
atomic-css, presentational-html, tailwind, css
A Tab Interface Before Its Time (aar)1569
components
HTML Garden1568
websites, art
50.1% Empty Links (mat)1567
accessibility, links, semantics, seo
Relative Rounded Corners (bel)1566
css
ARIA vs. HTML (aar)1565
accessibility, aria, semantics, comparisons
Avoid Spanning Table Headers (aar)1564
accessibility, assistive-tech, tables
Representation of Style (ste)1563
semantics
A Step-by-Step Guide to Building Accessible Carousels (swe/sma)1562
guides, carousels, accessibility, user-experience
Declarative Shadow DOM (dev+)1561
shadow-dom, dom
Screen Readers Don’t Convey the Semantics of “strong” and “em” (mat)1560
accessibility, screen-readers, semantics
Mastodon and Open Graph (drd)1559
social-media, mastodon, metadata, open-graph
An Introduction to HTML Cheat Sheet1558
introductions, semantics, cheat-sheets
Table of Contents Progress Animation (kev)1557
css, javascript, animations, progress-indicators
Interop 2023 CMS Checkin (chr)1556
interoperability, rss, atom, semantics
Rotating Gallery With CSS Scroll-Driven Animations (jhe)1555
css, javascript, animations, scrolling
What Are HTML5 Semantic Elements?1554
semantics
HTML Input Types (mar)1553
forms
Optimal Images in HTML (ste/bui)1552
images, backgrounds, performance, optimization
Use the Dialog Element (Reasonably) (sco)1551
modals, accessibility
Screen Readers Support for Text Level HTML Semantics (ste/tpg)1550
semantics, screen-readers, support, accessibility
Musing Upon an “[alt]” Text Badge on Images (chr)1549
accessibility, css
The Modern Way of Serving Images (kur)1548
images, performance
If You Need a Link, Don’t Use a Button (tem)1547
semantics, links, buttons, accessibility
Improve Your HTML Semantic With Pico CSS1546
pico
Unordered Lists in Main Navigations (mat)1545
lists, navigation, semantics
Two Ways to Safely Break a Long Word in HTML (ami)1544
Three Attributes for Better Web Forms1543
forms, attributes
Data URLs and Pool in Your URL (wes)1542
data-urls
Faking Min Width on a Table Column (css)1541
tables, css, responsive-design
Customizing HTML Form Validation (dav)1540
forms, validation
How to Build Great HTML Form Controls (aus/fre)1539
how-tos, forms
7 Required Steps to Secure Your Iframes Security1538
iframes, security, xss, http-headers, csp
Conditional API Responses for JavaScript vs. HTML Forms (aus)1537
javascript, forms, security, comparisons
Theme Toggles1536
websites, theming, toggles, react
Website Accessibility (15 Best Practices) (bru)1535
accessibility, best-practices, content, readability, captcha, images, alt-text, forms, focus, tooling
A Problem With Link Relationships (j9t)1534
links, metadata, semantics, maintainability
Enforcing Better HTML Markup With Eleventy (mat)1533
semantics, conformance, eleventy
A Theory of Web Relativity (alv/mat)1532
metadata, structured-data
Building an Accessible Theme Picker With HTML, CSS, and JavaScript (fos)1531
accessibility, css, javascript, theming, functionality
Common Nesting Issues in HTML (cit/mat)1530
nesting
Interop 2022: End of Year Update (rac)1529
interoperability, web-platform, browsers, css
HTML Dialog (5t3)1528
modals
Mini-Guide to Add an Image (its/mat)1527
images
Modern HTML as a Foundation for Progressive Enhancement (ffo/mat)1526
progressive-enhancement
5 HTML Elements, and a Partridge in a Despair Tree (mat)1525
semantics, accessibility
4 Ways CSS “:has()” Can Make Your HTML Forms Even Better (aus)1524
css, selectors, forms
Get That Marquee AeStHeTiC (dni/mat)1523
css, effects
An HTML-First Mental Model (noa/per)1522
dom, performance
Table Like It’s 2023 (cli/mat)1521
tables
One Day We’ll Have a Fully Customisable Select (hdv/mat)1520
css
There Can Be Only One: Options for Building “Choose One” Fields (aar/mat)1519
forms
Dear Developer, Your Assumptions Are Wrong (mat)1518
Inside the Mind of a Frontend Developer: Article Layout (sha)1517
css, layout
A Modern HTML Template (2022)1516
templates
Meaningful Labels Using ARIA—or Not (mat)1515
accessibility, forms, labels, aria
4 More HTML Concepts You Didn’t Know (j9t)1514
concepts, forms, focus
Brief Note on Description List Support (aar)1513
lists, semantics, accessibility, screen-readers, support
Reading the Meter (sup/mat)1512
semantics, accessibility
Landmarks and Where to Put Them (kil/mat)1511
semantics, aria, accessibility
You Don’t Need ARIA for That (den/mat)1510
accessibility, aria
How to Transfigure Wireframes Into HTML (lar/mat)1509
how-tos, prototyping, conversion
HTML Semantics and Accessibility Cheat Sheet (web)1508
cheat-sheets, semantics, accessibility
Minification and Cache Directives for the Most Popular Websites of the Internet (dvk)1507
minification, javascript, css, lightning-css, html-minifier, metrics, caching, performance
Shadow DOM and Accessibility: The Trouble With ARIA (nol)1506
dom, shadow-dom, accessibility, aria
Newer Things to Know About Good Ol’ HTML Lists (dxn/css)1505
lists, semantics
Upgrade Your HTML IV (j9t/fro)1504
books, frontend-dogma, minimalism, craft, conformance
HTML Content Model Categories (rus)1503
semantics
Lazy Loading Images in HTML (sim)1502
performance, lazy-loading
The Shape-Shifting “a” Element (rus)1501
links, semantics
The “label” Element (rus)1500
labels, semantics
Page Title Conventions (ada)1499
accessibility, seo
What Happened to Text Inputs? (hey)1498
videos, forms
Brief Note on “aria-readonly” Support (aar)1497
accessibility, aria, assistive-tech, support
You Don’t Need HTML (ede)1496
websites, web-platform
A Guide to Keyboard Accessibility: HTML and CSS (its/sma)1495
guides, accessibility, keyboard-navigation, css
Dialogs, Modality, and Popovers Seem Similar—How Are They Different? (hdv)1494
semantics, accessibility, modals, pop-overs
Foundations: Native Versus Custom Components (tet)1493
accessibility, fundamentals, components, comparisons
Inside the Mind of a Frontend Developer: Hero Section (sha)1492
css
6 Steps to Improve HTML Images for Users and Developers (aus)1491
images, performance, responsive-design
16 Rare HTML Tags You Really Should Know1490
semantics
HTML and CSS Features, Tips for a 10× Faster Page Loading Speed1489
css, performance, tips-and-tricks
Intro to HTML-First Frontend Frameworks1488
introductions, frameworks
Building a Tooltip Component (arg)1487
components, tooltips, css
The Truth Behind Implicit/Explicit Form Labels1486
forms, labels, accessibility
Common ARIA Mistakes and How to Avoid Them (ale)1485
accessibility, aria, mistakes
Edit Someone Else’s Website: “contenteditable” and “designMode” (aus)1484
Introducing html.to.design (div)1483
introductions, design, figma, plugins, browser-extensions
HTML 2022: 20 Additional Observations From Analyzing the Web Almanac Data (j9t)1482
metrics, web-almanac
A Little Semantic HTML Trick for React Components1481
react, semantics, components, tips-and-tricks
How to Optimize Resource Loading With the “fetchpriority” Attribute (mat/deb)1480
how-tos, performance, optimization
Foundations: HTML Semantics (ihe/tet)1479
accessibility, fundamentals, semantics
When Going Somewhere Does a Thing: On Links and Buttons (kil)1478
accessibility, links, buttons, semantics
Templating in HTML (kit)1477
javascript
GIFs Without the .gif: The Most Performant Image and Video Options Right Now (oll/css)1476
performance, multimedia, images, gif
Learn HTML (est)1475
courses
Named Element IDs Can Be Referenced as JavaScript Globals (css)1474
javascript
Markup (j9t/htt)1473
web-almanac, studies, research, metrics
Streamable HTML Fragments (dev)1472
streaming
Two Things I Learned by Validating My HTML Again1471
conformance, lessons
Quick Reminder: HTML5 “required” and “pattern” Are Not a Security Feature (cod)1470
forms, security
Will Serving Real HTML Content Make a Website Faster? Let’s Experiment! (sco)1469
studies, research, performance
A “details” Element as a Burger Menu Is Not Accessible (ger/clo)1468
disclosure-widgets, semantics, accessibility
Brief Note on Super- and Subscript Text (aar)1467
accessibility, support, assistive-tech
How to (Not) Make a Button1466
how-tos, accessibility, buttons, semantics
Why the Number Input Is the Worst Input1465
forms, validation, accessibility
Wtf Is an Island and Why Is It in My Website?1464
frameworks, architecture, concepts
Making Sense of WAI–ARIA: A Comprehensive Guide (sma)1463
guides, accessibility, aria
2022: 0 of the Global Top 100 Websites Use Valid HTML (j9t)1462
css, conformance, metrics, quality, craft
The “details” and “summary” Elements, Again (sco)1461
disclosure-widgets, accessibility
Nuclear Footnotes (mey)1460
footnotes, css
What’s New With Forms in 2022? (oll/css)1459
forms, javascript
Building the Main Navigation for a Website (mat)1458
navigation, css
HTML Markup Tips for Developing Accessible Websites1457
accessibility, aria
A Content Warning Component (kit)1456
components, css
Disabled JavaScript Turns Off Native Lazy Loading (ste)1455
javascript, performance, lazy-loading
Accessible Lists and Tables (pop)1454
accessibility, lists, tables
Beginner’s Guide to Lists and How to Make Them Accessible (pop)1453
guides, lists, accessibility
Don’t Overwrite Visual Labels With “aria-label” (ash)1452
accessibility, aria, labels
Should I Use a Button or a Link? (ash)1451
buttons, links, semantics
Short Note on “figure” and “figcaption” (ste)1450
accessibility
CSS Classes Considered Harmful (kei)1449
css
TIL: You Can Access a User’s Camera With Just HTML (aus)1448
permissions
Creative List Styling (mic)1447
lists, css
Exploring the Underrated “output” Element (cli)1446
Table Column Alignment With Variable Transforms (mey)1445
css, tables, transforms, alignment
Tip: Use “fetchpriority=high” to Load Your LCP Hero Image Sooner (add)1444
performance, web-vitals
On Ratings and Meters (lea)1443
semantics, css
Capturing Images and Videos From the Camera of Mobile Devices Using HTML (ami)1442
multimedia, mobile
The Infinite Marquee (hex)1441
css, animations, effects
Making a Website Under 1 kB1440
performance, minimalism
Ruby Styling (ri/web)1439
ruby-markup, css
Abbreviations Suck (cfe)1438
accessibility
“<article>” vs. “<section>”: How to Choose the Right One (sma)1437
semantics, comparisons
Roundup of Recent Document Outline Chatter (geo/css)1436
headings, semantics, accessibility
Subheadings, Subtitles, Alternative Titles, and Taglines in HTML (ste/tpg)1435
semantics, headings, microcontent, accessibility
Abbreviations Can Be Problematic (tem)1434
accessibility
Minimal Social Markup (j9t)1433
social-media, open-graph, minimalism
What Is the Best Way to Mark Up an Exclusive Button Group? (lea)1432
semantics, accessibility, aria
What You Need to Know About ARIA and How to Fix Common Mistakes (pop)1431
accessibility, aria, mistakes
Avoiding “<img>” Layout Shifts: “aspect-ratio” vs. “width” and “height” Attributes (jaf)1430
performance, web-vitals, comparisons, attributes, aspect-ratio, css
Why the HTML Outlining Algorithm Was Removed From the Spec—the Truth Will Shock You! (bru)1429
semantics, accessibility
Two Levels of Customising “<selectmenu>” (hdv)1428
accessibility
Best Practices for Images (nuc)1427
images, best-practices
What the Hell Is “<!DOCTYPE html>”?1426
doctypes
Farewell to HTML5Rocks (pau)1425
community, history
Are You Sure That’s a Number Input? (kil)1424
My Wonderful HTML Email Workflow (jos)1423
mjml, markdown, mdx, email, processes
HTML Cheatsheet1422
examples, cheat-sheets
Write HTML Right1421
optimization
Level Up Your Link Previews in Slack (whi)1420
social-media, open-graph, links, slack
The “Form” Element Created the Modern Web—Was It a Big Mistake? (wir)1419
forms, history, mistakes
8 Shocking HTML Tips You Probably Don’t Know About1418
tips-and-tricks
A Perfect Table of Contents With HTML and CSS (nza/css)1417
css
Why Are Iframe Titles Important for Accessibility?1416
accessibility, iframes, writing
HTML Cheat Sheet: A Quick Reference Guide for HTML Developers1415
guides, semantics, examples, cheat-sheets
Making Disabled Buttons More Inclusive (san/css)1414
forms, buttons, focus, aria, attributes, accessibility
Conditionally Loading CSS or Any Resource Using Media Queries (ami)1413
media-queries, performance
Building a Button Component (arg)1412
components, css, javascript, buttons
How the HTML “lang” Attribute Helps Accessibility1411
accessibility, attributes, localization
Don’t Fight the Browser Preload Scanner (mal)1410
browsers, parsing, performance
Divs Are Bad! (mat)1409
semantics
XHTML Syntax Is Still Worth Using (tem)1408
xhtml
Learn HTML [and] CSS (jad)1407
websites, courses, css
What’s Your Heading? (col)1406
accessibility, headings, semantics
Lost in Translation (mat/btc)1405
videos, design, accessibility, css
Please, Stop Disabling Zoom (mat)1404
accessibility, zooming
How to Use Videos With Alpha Transparency on the Web (ben)1403
how-tos, multimedia, transparency+opacity
Under-Engineered Multi-Selects (aar)1402
accessibility, aria
Foundations: Lists (tin/tet)1401
accessibility, fundamentals, lists
Common Frontend Interview Questions I’ve Been Asked1400
interviewing, javascript
The CSS Art Paradox (j9t)1399
css, art, quality
Introducing “inert”1398
introductions, attributes, accessibility, keyboard-navigation
Plain Old Semantic HTML: A Perfect Basis for Accessibility1397
accessibility, semantics
Non-Interactive Elements With the “inert” Attribute (web)1396
attributes, semantics
How Web Browsers Work: Parsing the HTML1395
browsers, parsing
Progressive Enhancement and HTML Forms: Use “FormData” (bra)1394
forms, progressive-enhancement
Does Valid and Semantic HTML Still Matter? (5t3+)1393
podcasts, semantics, conformance
Building a Dialog Component (arg)1392
components, modals, css, javascript
Those HTML Elements You Never Use1391
semantics
How to Turn HTML Webpage Into an Image?1390
how-tos, images, conversion
Designing Better Breadcrumbs (vit/sma)1389
usability, navigation, breadcrumbs
12 Years Beyond a HTML Joke (ste)1388
semantics
Alternative Text (Alt Text) (pop)1387
accessibility, images, writing, alt-text
HTML Is All You Need to Make a Website (whi)1386
“aria-labelledby” Usage Notes (ste)1385
accessibility, aria, labels
Accessible Cards (kit)1384
accessibility, css
How to Match HTML Elements With an Indeterminate State (ste)1383
how-tos, css, selectors
HTML-Only Keyboard Shortcuts (ami)1382
accessibility, keyboard-navigation, keyboard-shortcuts
Picture Perfect Images With the Modern “<img>” Element (add)1381
images, performance, web-vitals
Those HTML Attributes You Never Use (lou/sma)1380
attributes
HTML Semantics (cfe)1379
semantics
Write HTML, the HTML Way (Not the XHTML Way) (j9t/css)1378
xhtml, optimization
The Impact That High Quality Mark-Up Can Have on Accessibility, Performance, and Discoverability (vle)1377
videos, accessibility, performance
Building a Loading Bar Component (arg)1376
components, css, javascript
All HTML and CSS Cheatsheets in One Place1375
css, cheat-sheets
How to Automatically Size a Textarea Based on Its [Text] Using Vanilla JavaScript (cfe)1374
how-tos, javascript
The Weirdly Obscure Art of Streamed HTML1373
streaming, performance
Aligning Content in Different Wrappers (sha)1372
css, alignment
It Needs to Map Back to a Role (eri)1371
accessibility, aria, semantics
A Look at the Dialog Element’s Super Powers (ste)1370
modals, javascript
Creating Native Web Components (cod)1369
web-components, javascript
It’s Always Been You, Canvas2D1368
css, canvas, javascript
HTML Tips and Tricks1367
tips-and-tricks
(Not So) Short Note on Being Owned (ste)1366
aria, accessibility
Foundations: Headings (ihe/tet)1365
accessibility, fundamentals, headings, semantics
Web Component Pseudo-Classes and Pseudo-Elements Are Easier Than You Think (css)1364
css, web-components
HTML Comments Work in JavaScript Too1363
javascript, comments
Support for Marking Radio Buttons Required, Invalid (aar)1362
accessibility
Column Headers and Browser Support (aar)1361
accessibility, semantics
There Is No Character Limit for “Alt Text” (yat)1360
accessibility, alt-text, images
How to Create a Search Page for a Static Website With Vanilla JS (cfe)1359
how-tos, functionality, search, javascript
Why Radio Buttons Are Called Radio Buttons in UIs? (ami)1358
semantics, naming
MHTML in Chromium (eri)1357
browsers
Replace JavaScript Dialogs With the New HTML Dialog Element (sto/css)1356
modals, semantics
Introducing the Dialog Element (web)1355
introductions, modals