
Understanding setTimeout() in JavaScript
An exploration of JavaScript's `setTimeout` function. Understand its nuances in component lifecycles, and learn effective timing strategies using it.
Articles
Responsive development is the most commonly‑used method for creating a web page that responds to the type of device or screen size it is being displayed upon. Unlike Adaptive Development, responsive techniques generally revolve around using media queries to determine the size of the visiting device screen and available features, serving one codebase that responds to this, rather than supplying different code to different devices.
Below you will find a subset of articles from my blog specifically about Responsive Development. This is an area that I have worked with for many years, and have managed to write about quite a few times. There are thirty‑eight collected together for you below.

setTimeout() in JavaScriptAn exploration of JavaScript's `setTimeout` function. Understand its nuances in component lifecycles, and learn effective timing strategies using it.

matchMedia MethodIn the past, we used event listeners on the Window to determine the physical dimensions of a document. Using matchMedia allows us to use media query syntax.

content‑visibilityUsing the CSS content‑visibility property we can control how an element interacts with the browser render, controlling when or how an element content renders.

Container queries are a powerful new feature in CSS that allow us to move away from view‑port based responsiveness to more explicit isolated areas of the page.

position: sticky in CSSAchieving sticky positioning on the web was once a weighty process using JavaScript to detect scroll positions and switch styles. Now, we have position: sticky!

Use Chakra UI breakpoints in React with useBreakpoint and ThemeProvider, including responsive interface choices and custom breakpoint configuration.

vw and vhExplore CSS viewport units beyond vw and vh, including vmin, vmax, vi, vb, svh, lvh, and dvh for mobile browser chrome, writing modes, and sizing bugs.

Flexbox in CSS allows for flexible, dynamic and responsive layouts. Learn how to use its properties to create efficient interfaces and avoid potential issues.
Progressive enhancement in web development is often misunderstood: it allows us to take advantage of more modern browsers, without penalising the older ones.

Now used as almost trivial marketing buzz words, there really are significant differences between responsive and adaptive design and development techniques.

An exploration of array‑like objects in JavaScript. Explanations of their unique characteristics and how to navigate them easily in front‑end development.

grid in CSSStart using CSS Grid with containers, columns, rows, item placement, gaps, track sizing, flexible layouts, and practical two‑dimensional examples.

Discover advanced responsive web design techniques with CSS Grid, `clamp()`, container queries, and JS enhancements for performance‑optimised, adaptive sites.

JavaScript frameworks streamline development with reusable components, state management, and optimised rendering. Here, I compare React, Vue.js, and Angular.

vw and vhUse CSS viewport units vw and vh for responsive sizing, understanding percentage‑of‑viewport behaviour, full‑screen layouts, and mobile browser caveats.

Understand CSS media queries for responsive design, including screen conditions, mobile‑first and desktop‑first approaches, breakpoints, and device traits.

Boost website performance with HTML, CSS & JavaScript optimisation. I explore techniques: lazy loading, critical CSS, script deferment for faster load times.

window.resize Events in iOSUnderstand phantom window.resize events in iOS Safari, including dynamic browser UI, viewport changes, orientation, user interaction, and mitigation patterns.