Home Web Trends Mobile Sites AMPs PWAs React Web VR Copilot Resources

Necessities in Mobile Site Development

Introduction

In the changing landscape of internet usage, responsive design and mobile-first sites have become crucial for remaining relevant on the interwebs. Throughout the following paragraphs, you'll come to learn several key factors that will aid you in creating a mobile ready website.

A look into the Responsive Design and Mobile-First project.

Adaptive Images

Images ultimately help add flavor to a website. However, some imges might end up breaking a website's flow on smaller devices, thanks to their size. That's where adaptive images come in! With the help of media queries and the picture element, one is able to specify which image file should be displayed on a certain screen size. All images on this page utilize this technique, beginning with the little fluffball below!

A cute picture of a puppy.

Media Queries

Tablet

For tablet users (specifically screens 600px and lower), I have implemented styling which shrinks the navbar down, preventing the multitude of links from cluttering an already small screensize.

Phone

In addition to the above, I have reduced the size of several elements in order to prevent scrolling. I have also set the aside to not display, and instead replaced it with a facsimile that follows after the "main" element content.

Navigation

Navigation was restructured for smaller-screen devices through a combination of media queries and additional responsive elements. The styling tells the page to not load the full navigation. Rather, it will load only the "first child" and then place the rest underneath a hamburger icon. Additionally, JavaScript is in place to tell the browser whether to utilize this responsive styling by changing the sub-class depending on screen size.

Adding Touch (New Technique)

Previously, in regards to buttons on websites (most promient with the navigation), I had only utilized minimal styling to hide the fact that it was really just a hyperlink. This time around, I learned how to create a navigation with more button-like presence. Additionally, through using several psuedo classes such as "hover," "focus," and "active", I was able to change the color of the buttons depending on the user's action. While I was familiar with some psuedo classes, I had only ever known them to change the color of the link text, not the entirity of a button's color.

Pixel Width

From my research, I've come to learn that pixel width is an important topic when it comes to mobile site design. Various platforms, such as Apple or Android, each offer their own recommendations on this topic. Ultimately, it's been decided that anywhere from 45px to 57px is ideal when creating buttons for touchscreens. In my case, I've gone slightly smaller (44px) as I believe it to be large enough to touch while keeping space open for future navigational buttons.

Example of pixel width in code Example of pixel width live on web.

Touchscreen guidelines

Macro layouts

Designating a layout for your website is especially necessary for touchscreen use. Otherwise, the flow of your website will ultimately be interupted. One fantastic way to layout a webpage is through grid display. This is displayed here only on 600px screens and up, as they'll have more room to contain 2 separate columns. Utilizing this, I can have my main documentation placed here, while my resources and reflections on this project can be placed on the "aside" element, keeping them separate and organized.

Example of macro layout live on web Example of macro layout code.

Button responsiveness

At the end of the day, your website is worthless if people can't get to where they want to go on it! That's why button responsiveness is all too important for touchscreens. Pixel width and responsive design are only part of the equation (albeit major ones, hence their inclusion above). One will need to make sure each button links to the right page and each button's name makes sense. Otherwise, it'll ultimately lead to confusion and lost visitors! As such, the navigation features short but sweet names of what each page contains and are linked correctly via the "a href" element.

Example of navigation code

Typography

Typography is an important guideline for touchscreens, as you'll want your work to be presentable and aesthetic. Therefore, I have maintained the typography to mainly "Arial" and its surrounding font families. With this being a pretty common font across devices, it ensures that the site will look and feel similar across all platforms.

Example of typography code.

SEO (Search Engine Optimization)

If you want your page to be seen at the forefront, one has to make sure to add in all the juicy details describing your page. In my case, I have added title tags as well as description and keyword meta tags to the head section to help search engines see the main purpose of my project. Additionally, headings have been bolded to showcase their importance. All links have title text applied to describe their purpose as well.

Framework for Learning

Testing Devices

  • Google Pixel 4a (Android OS)
  • Chrome Developer Tools (Windows OS)
  • Adobe Dreamweaver Renderer

Sources

  1. Adobe. (n.d.). Adobe Color Wheel. Color.adobe.com.
  2. Matt Gaunt (2014, January 1). Add touch to your site : articles : web.dev. web.dev.
  3. Scacca, S., & Author, A. T. (2018, June 1). A reference guide for typography in mobile web design. Smashing Magazine.
  4. T, A. (2012, February 21). Finger-friendly design: Ideal Mobile touchscreen target sizes. Smashing Magazine.
  5. web.dev (n.d.). Macro layouts  :  web.dev. web.dev.
  6. W3 Schools. (n.d.). Responsive Web Design Images. W3 Schools.
  7. W3 Schools. (n.d.). W3schools.com. How To Create a Responsive Top Navigation Menu.

Reflection Statement

Before beginning this two-week long journey, I only knew a handful of elements pertaining to mobile site design. I had previously dealt with media queries and certain pseudo classes (like hover) to help stylize hyperlinks.

After my research, however, I came to know a whole lot more! Adaptive images were a big one, as I previously didn't how websites linked different size pictures for use on different size displays.

I also hadn't created a responsive, button-like navigation bar before (I had only ever done a regular dropdown menu before). This helped me explore utilizing pseudo classes in order to change the colors of the buttons depending on touch.

Additionally, designing with pixel width in mind was a new concept that I'm glad I learned. It's something that makes sense once you see it, but something regular users likely wouldn't even think was a part of the design process!

Ultimately, I gained a lot through this project that helped build my skills in web design and development.