Deep and Wide

In today’s technology climate, it is a jungle. There are thousands of devices, environments, etc. While this is great from the standpoint of the consumer, this gives the developer nightmares. It is a monumental task to make your application design and functionality operate smoothly everywhere. Fortunately, there are tools and methods to assist. In the world of the internet, Responsive Web Development (RWD) is a major player in the toolbox. What I would like to focus on in this post is screen size. With the myriad of devices available, there are tons of varying screen sizes. The developer/designer needs to make the best effort possible to make their app look and perform well on each size.

Probably the most popular method to accomplish this task is using CSS with media queries. I plan on delving into this in more detail at a later date, but suffice it to say that one can use media queries to target screen size ranges. That is typically combined with using percentage (%) sizes of widths, etc. to have the app alter based upon the screen size.

In today’s post, I want to focus, rather, on how we can use JavaScript to accomplish the same task. While this is a less-often used method, it can come in handy at certain times. Developers can make use of two properties…clientHeight and clientWidth. Let’s look at an example…

[code lang=”js”]
// Set the height of an image based upon the body
document.getElementById("someImg").style.height = (document.body.clientHeight – 50) * 0.95;
[/code]

What the aforementioned code does is set the height of an image to 95% of the browser chrome height minus 50 pixels to allow for spacing on the top. So if you place this code in a function, you could call this function whenever the browser chrome is resized using the onresize event. This would cause the image to change size.

So while this may not be the most prevalent usage of resizing elements to fit the screen, it is a handy tool on the occasions where you need to alter elements programmatically.

Happy Coding!

Clay Hess

More To Explore

Crisis. Concept of reducing costs. Bag with dollars money in vise.
Code

Compression Streams API: Native gzip/deflate for the web

The Compression Streams API brings native, streaming gzip and deflate to the web platform. With built‑in CompressionStream and DecompressionStream, you can compress or decompress data on the fly—no third‑party libraries required. It integrates cleanly with Fetch/Response to turn streams into ArrayBuffer, Blob, Uint8Array, String, or JSON, works in Web Workers, and is part of the 2023 Baseline. Use it to shrink uploads, store compressed data offline, and streamline real‑time pipelines while keeping bundles lean.

Share This Post

small_c_popup.png

Need help?

Let's have a chat...


Login

Jump Back In!

Here at Webolution Designs, we love to learn. This includes sharing things we have learned with you. 

Register

Begin Your Learning Journey Today!

Come back inside to continue your learning journey.