This is part three of our series on Responsive Web Design. Click here to read Part 1 and Part 2.
In our previous articles, we’ve covered why your business should have a responsive website, as well as what kind of content should live there. Today we will cover some best practices for making sure your site looks and functions great no matter what device a potential visitor is using.
The first step to building a good responsive website is to design your site to be mobile friendly from the ground up. Traditionally, sites were designed to look great on a large desktop monitor first and foremost, and those sites often did not respond at all based on the size of a visitor’s device screen. You may encounter older sites like this still, with images and text shrinking to the point of illegibility, or worse, spilling off the side of the screen entirely.
Designing with a mobile first philosophy means figuring out how your site will work and look at the smallest device size they are likely to use – say, an iPhone 5 – before designing the layout to be used at larger screen sizes because over 51% of website traffic these days is mobile.
That said, it’s important to remember that mobile first does not mean mobile only. It is still important that you visitors have a rich and intuitive experience when navigating your site with their tablet, laptop or desktop.
There are thousands of individual devices out there, with no such thing as industry-wide standards for what dimensions those devices use. There are a handful of generally useful breakpoints, though, that should work well across most broad categories of devices. While individual sites and individual devices can vary, we’ve found these pixel widths to be very useful:
Your users, especially on mobile devices, may have limited bandwidth. Sure, beautiful full screen images (like the one in this article!) are becoming more and more common on websites, but it’s important to make sure your images are appropriately scaled and sized.
Tools like Photoshop and the free image editor GIMP will let you save your pictures at a web friendly size (ideally no wider than 1366px wide if you can help it), and also let you reduce the image quality to a point where a human eye can’t tell that it’s compressed — but your computer still can. 50% – 60% quality for JPGs is a good rule of thumb. TinyPNG and TinyJPG are great online tools that can compress your images further without any visible content loss.
In addition, size your images appropriately for where they live on your page. If you are uploading an author’s headshot that will only show up 300px wide or smaller in your author bio, there’s no reason to upload an image that is any wider than that. Save your pictures at the size they will be displayed on your site.
Whenever possible, you should try to keep your titles and headlines on one line. That frequently means that you will need to resize the fonts you use based on different breakpoints. You should also take care in selecting what fonts you use at any size. Make sure that typefaces that are thin don’t become unreadable as they get smaller. It’s also a good idea to give your text strong contrast against the background, to help screens with lower brightness or users with vision impairments.
Navigation is one of the biggest challenges when it comes to designing a responsive website. This is especially true for large sites with many levels of menu items, but the same philosophy can work on any site.
The first thing to keep in mind is function. While your full screen site might have a full width menu across the top, that simply won’t work on devices like a tablet or phone. A standard solution is to replace your full width menu with an icon (such as the famous “hamburger” icon) at a reasonable width, such as 1024px or 768px, and change the format to a vertical menu.
On a laptop or desktop, you can hover over a navigation link to open a drop down context menu. On a tablet or mobile device, there is no hover function – this is where your site should be designed to work with taps and swipes. In your responsive vertical menus, icons like arrows or plus-signs can be used to indicate that a menu item is multi-level, and tapping these icons will expand your menu choices further.
While the guidelines presented above will get you well on the way toward a stellar responsive website, it’s important to note that the internet is always changing, along with the ways in which we access it. Other responsive design best practices to keep in mind are mobile page speed loads, how users interact with forms at mobile sizes, and more. Make sure you test your site on as many devices and browsers as you can get your hands on, and use tools like Browserstack to test for devices you don’t own yourself. And don’t forget, you can always consult an expert!
Whether you are programming your own website, are looking for someone to optimize what you currently have, or are looking to have a site built from scratch, we’re here to help!
125 S. HOWES, #1C
FORT COLLINS, CO 80521
We love questions. get in touch
Copyright © 2024 Sage Marketing Group, Inc. All Rights Reserved. Website designed and built by us of course! (Sage Marketing Group, Inc.)
The unrelenting determination and effort to create sweet projects that make our clients so happy they want to cry.
Cookie | Duration | Description |
---|---|---|
cookielawinfo-checkbox-advertisement | 1 year | Set by the GDPR Cookie Consent plugin, this cookie records the user consent for the cookies in the "Advertisement" category. |
cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
CookieLawInfoConsent | 1 year | CookieYes sets this cookie to record the default button state of the corresponding category and the status of CCPA. It works only in coordination with the primary cookie. |
elementor | never | The website's WordPress theme uses this cookie. It allows the website owner to implement or change the website's content in real-time. |
ellipsis.sessionid | 1 hour | Ellipsis sets this cookie to protect the website from spam and establishes a session cookie so that when you submit a contact form or post a comment, your form submission will be passed along with an anonymized IP address through Human Presence. |
ellipsis.sessionts | 1 hour | Ellipsis sets this cookie to protect the website from spam and establishes a session cookie so that when you submit a contact form or post a comment, your form submission will be passed along with an anonymized IP address through Human Presence. |
rc::a | never | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
rc::c | session | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
sb_csrftoken | 1 year | Sketchfab sets this cookie to protect the site from Cross-Site Request Forgery security attacks. |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
Cookie | Duration | Description |
---|---|---|
yt-player-headers-readable | never | The yt-player-headers-readable cookie is used by YouTube to store user preferences related to video playback and interface, enhancing the user's viewing experience. |
yt-remote-cast-available | session | The yt-remote-cast-available cookie is used to store the user's preferences regarding whether casting is available on their YouTube video player. |
yt-remote-cast-installed | session | The yt-remote-cast-installed cookie is used to store the user's video player preferences using embedded YouTube video. |
yt-remote-connected-devices | never | YouTube sets this cookie to store the user's video preferences using embedded YouTube videos. |
yt-remote-device-id | never | YouTube sets this cookie to store the user's video preferences using embedded YouTube videos. |
yt-remote-fast-check-period | session | The yt-remote-fast-check-period cookie is used by YouTube to store the user's video player preferences for embedded YouTube videos. |
yt-remote-session-app | session | The yt-remote-session-app cookie is used by YouTube to store user preferences and information about the interface of the embedded YouTube video player. |
yt-remote-session-name | session | The yt-remote-session-name cookie is used by YouTube to store the user's video player preferences using embedded YouTube video. |
ytidb::LAST_RESULT_ENTRY_KEY | never | The cookie ytidb::LAST_RESULT_ENTRY_KEY is used by YouTube to store the last search result entry that was clicked by the user. This information is used to improve the user experience by providing more relevant search results in the future. |
Cookie | Duration | Description |
---|---|---|
_ga | 1 year 1 month 4 days | Google Analytics sets this cookie to calculate visitor, session and campaign data and track site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognise unique visitors. |
_ga_* | 1 year 1 month 4 days | Google Analytics sets this cookie to store and count page views. |
_gat_UA-* | 1 minute | Google Analytics sets this cookie for user behaviour tracking. |
_gid | 1 day | Google Analytics sets this cookie to store information on how visitors use a website while also creating an analytics report of the website's performance. Some of the collected data includes the number of visitors, their source, and the pages they visit anonymously. |
ajs_anonymous_id | 1 year | This cookie is set by Segment to count the number of people who visit a certain site by tracking if they have visited before. |
ajs_user_id | never | This cookie is set by Segment to help track visitor usage, events, target marketing, and also measure application performance and stability. |
Cookie | Duration | Description |
---|---|---|
_tt_enable_cookie | 1 year 24 days | Tiktok set this cookie to collect data about behaviour and activities on the website and to measure the effectiveness of the advertising. |
_ttp | 1 year 24 days | TikTok set this cookie to track and improve the performance of advertising campaigns, as well as to personalise the user experience. |
PREF | 8 months | PREF cookie is set by Youtube to store user preferences like language, format of search results and other customizations for YouTube Videos embedded in different sites. |
VISITOR_INFO1_LIVE | 6 months | YouTube sets this cookie to measure bandwidth, determining whether the user gets the new or old player interface. |
VISITOR_PRIVACY_METADATA | 6 months | YouTube sets this cookie to store the user's cookie consent state for the current domain. |
YSC | session | Youtube sets this cookie to track the views of embedded videos on Youtube pages. |
yt.innertube::nextId | never | YouTube sets this cookie to register a unique ID to store data on what videos from YouTube the user has seen. |
yt.innertube::requests | never | YouTube sets this cookie to register a unique ID to store data on what videos from YouTube the user has seen. |
Cookie | Duration | Description |
---|---|---|
__tld__ | session | Description is currently not available. |