Skip to content
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted about 2 months ago

Responsive Landing Page

accessibility, vite
P
TanLuc2410•60
@TanLuc2410
A solution to the Manage landing page challenge
View live sitePreview (opens in new tab)View codeCode (opens in new tab)

Solution retrospective


What are you most proud of, and what would you do differently next time?

Next time i would style the footer differently. I will use more flex and grid layout more in the footer instead of trying to margin-inline: auto. Now that i think back, i wonder which approach is better between trying to style 3 viewports (mobile, tablet and desktop) at the same time and finish one viewport and then move on to the next.

What challenges did you encounter, and how did you overcome them?

I have encountered the problem with CSS nesting. The CSS nesting worked while i was in developing phase but when it comes to production build, it didn't. I have spent some time to figure out what went wrong and ultimately, it was because of CSS nesting. I had to refactor all the CSS nesting. I hope in the future, CSS nesting will be more widely supported.

What specific areas of your project would you like help with?

It was the background image. There are two problems that really make me struggle. The first one is adding background image and make it appear under the content. The second problem is that with different viewports, those background images need to be positioned differently and have different sizes. Thats not all, the wider the screen, the visual will also change.

Code
Select a file

Please log in to post a comment

Log in with GitHub

Community feedback

  • Ayokanmi Adejola•1,490
    @Ayokanmi-Adejola
    Posted about 2 months ago

    I've had a detailed look at your Responsive Landing Page solution, and it's a truly impressive piece of work! You've done an excellent job bringing this multi-section design to life.

    What I Liked :

    • Exceptional Responsiveness: The landing page adapts beautifully and smoothly across various screen sizes, from large desktops down to mobile devices. The layout transitions are well-handled, and the content remains perfectly readable.
    • Strong Visual Fidelity: The design, colors, typography, and overall aesthetic are very accurate to the Frontend Mentor specifications. The different sections are clearly defined and visually appealing.
    • Clear Call-to-Actions (CTAs): The buttons and interactive elements are prominent and guide the user effectively.
    • Effective Layout Techniques: Your implementation demonstrates a solid understanding of how to build complex, responsive layouts, likely utilizing modern CSS like Flexbox and Grid.

    Areas for Improvement :

    1. HTML Semantics & Structure:

      • Review your heading structure (<h1>, <h2>, <h3>, etc.). Ensure there's a clear hierarchy throughout the page, with one primary <h1> for the main title of the page/hero section, and then <h2> for major sections, and <h3> for sub-sections. This is crucial for SEO and screen reader navigation.
      • For elements like the navigation, footer links, or feature lists, ensure you're using appropriate semantic HTML (e.g., <nav> for navigation, <ul> and <li> for lists of links/features).
      • All images (<img> tags) should have descriptive alt attributes (e.g., alt="Illustration of dashboard statistics" instead of just "dashboard"). This significantly improves accessibility for screen reader users.
    2. Accessibility (beyond alt attributes):

      • For interactive elements like the mobile navigation toggle (hamburger menu), ensure it's a <button> element. If it's a div, it needs role="button", tabindex="0", and JavaScript to handle Enter and Space key presses. Also, consider aria-expanded and aria-controls for accessibility.
      • Double-check color contrast ratios for all text against its background. Ensuring high contrast (WCAG AA standard or better) is vital for readability, especially for users with visual impairments.
      • Ensure keyboard navigation is smooth for all interactive elements (links, buttons). All elements should be reachable and usable with just the Tab key and Enter/Space.
    3. CSS Best Practices & Organization:

      • Consider using CSS Variables (Custom Properties) for all your colors, font families, common spacing values, and potentially reusable component styles. This will make your stylesheet much more maintainable, scalable, and consistent.
      • Review your CSS for any highly specific or deeply nested selectors. Sometimes, flatter selector structures are easier to read, maintain, and prevent specificity issues.

    In Summary:
    
    This is a truly impressive Responsive Landing Page, TanLuc2410! You've clearly demonstrated a strong ability to translate a complex design into a well-adapting web page. Focusing on refining the HTML semantics and further enhancing accessibility will make your solution even more robust and user-friendly for everyone.
    
    Keep up the fantastic work!
    

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord

Stay up to datewith new challenges, featured solutions, selected articles, and our latest news

Frontend Mentor

  • Unlock Pro
  • Contact us
  • FAQs
  • Become a partner

Explore

  • Learning paths
  • Challenges
  • Solutions
  • Articles

Community

  • Discord
  • Guidelines

For companies

  • Hire developers
  • Train developers
© Frontend Mentor 2019 - 2025
  • Terms
  • Cookie Policy
  • Privacy Policy
  • License

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

How does the accessibility report work?

When a solution is submitted, we use axe-core to run an automated audit of your code.

This picks out common accessibility issues like not using semantic HTML and not having proper heading hierarchies, among others.

This automated audit is fairly surface level, so we encourage to you review the project and code in more detail with accessibility best practices in mind.

How does the CSS report work?

When a solution is submitted, we use stylelint to run an automated check on the CSS code.

We've added some of our own linting rules based on recommended best practices. These rules are prefixed with frontend-mentor/ which you'll see at the top of each issue in the report.

The report will audit all CSS, SCSS and Less files in your repository.

How does the HTML validation report work?

When a solution is submitted, we use html-validate to run an automated check on the HTML code.

The report picks out common HTML issues such as not using headings within section elements and incorrect nesting of elements, among others.

Note that the report can pick up “invalid” attributes, which some frameworks automatically add to the HTML. These attributes are crucial for how the frameworks function, although they’re technically not valid HTML. As such, some projects can show up with many HTML validation errors, which are benign and are a necessary part of the framework.

How does the JavaScript validation report work?

When a solution is submitted, we use eslint to run an automated check on the JavaScript code.

The report picks out common JavaScript issues such as not using semicolons and using var instead of let or const, among others.

The report will audit all JS and JSX files in your repository. We currently do not support Typescript or other frontend frameworks.

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub