Skip to content

Frontend Mentor Junior-level challenge | Sunnyside agency landing page - from the FM description: "This challenge will be a perfect test of your layout and responsive skills. There's a tiny bit of JS for the mobile menu, but the focus is HTML & CSS." Challenge page: https://www.frontendmentor.io/challenges/sunnyside-agency-landing-page-7yVs3B6ef

Notifications You must be signed in to change notification settings

loosenthedark/frontend-mentor_sunnyside-agency-landing-page

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Frontend Mentor logo

Sunnyside agency landing page

Live link to deployed project (hosted on GitHub Pages)

This is a solution to the Sunnyside agency landing page challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.

Table of contents

Overview

The challenge

Users should be able to:

  • View the optimal layout for the site depending on their device's screen size ✅
  • See hover states for all interactive elements on the page ✅

Design mockups

(jpeg starter files provided in Frontend Mentor challenge hub)

Mobile design:

click to view

Sunnyside agency landing page mobile design mockup

Mobile menu detail:

click to view

Sunnyside agency landing page mobile menu detail mockup

Desktop design:

click to view

Sunnyside agency landing page desktop design mockup

Screenshots

Responsively App scrollable device mockups

Links

My process

Built with

  • Semantic HTML5 markup
  • CSS custom properties
  • Flexbox
  • CSS Grid
  • Vanilla JavaScript event handling
  • Mobile-first workflow
  • Responsive web design

What I learned

  • I wanted to have a bit of fun by flipping one of the site's 'Services' section's background images on its head. To achieve this, I had to leverage an absolutely-positioned ::before pseudo-element. This pseudo-element's transform property was used to perform the desired rotation:

  • This was only my second time building out a site incorporating CSS grid, so I found Morten Rand-Hendriksen's LinkedIn Learning course on this layout method to be an excellent primer. More specifically, his advice on using a @supports CSS at-rule to check for browser support before conditionally applying Grid styles was something I adhered to within the project's stylesheet:

  • I decided to detach the site's nav from its .fixed-top positioning on tablet and desktop, and instead use a dynamically-displayed 'back-to-top' button on vertical page scroll (> 500px) to aid navigation/improve UX:

Continued development

At the time of writing (August 2021), the project's custom stylesheet contains over 1,500 lines of CSS. It is my intention to refactor and reduce the size of this file at a later date, most likely through targeted use of CSS Variables. I also plan on slightly increasing font-sizing throughout the site on tablet, as this is looking a bit on the small side at present.

Useful resources

Developer

Notice

This site has been created for development purposes only.

About

Frontend Mentor Junior-level challenge | Sunnyside agency landing page - from the FM description: "This challenge will be a perfect test of your layout and responsive skills. There's a tiny bit of JS for the mobile menu, but the focus is HTML & CSS." Challenge page: https://www.frontendmentor.io/challenges/sunnyside-agency-landing-page-7yVs3B6ef

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published