Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found

Submitted

Responsive News Homepage

Amir H K 150

@AmirHKarimi888

Desktop design screenshot for the News homepage coding challenge

This is a solution for...

  • HTML
  • CSS
  • JS
2junior
View challenge

Design comparison


SolutionDesign

Community feedback

P

@tatasadi

Posted

Great job on completing this challenge! Your implementation showcases a solid understanding of HTML, CSS, and JavaScript to create a responsive and interactive web page. Let's dive into some suggestions that could further enhance your project:

Optimize Image Loading with CSS Instead of JavaScript: Instead of changing the src attribute of the poster image with JavaScript depending on the screen size, consider using CSS background images for the .poster div. This approach allows you to utilize media queries to load different images for different screen sizes, reducing the reliance on JavaScript for layout styling and potentially improving page load performance.

.poster {
      background-size: cover;
      background-position: center;
}
@media (min-width: 375px) {
  .poster {
        background-image: url('./src/assets/images/image-web-3-desktop.jpg');
   }
}
@media (max-width: 374px) {
  .poster {
        background-image: url('./src/assets/images/image-web-3-mobile.jpg');
  }
}

Adjust Animation Speed for a Better User Experience:

The animation for opening and closing the menu feels very slow. Speeding up the animation can make the interface feel more responsive and engaging. Consider adjusting the animation duration from 2 seconds to something quicker, like 0.5 seconds, to improve the user experience.

// Adjusting the animation speed
document.querySelector(".sidebar").style.animation = "openToLeft 0.5s ease 0s 1 normal forwards";

Use Semantic HTML for Better Accessibility and SEO: Consider using more semantic HTML elements to improve accessibility and SEO. For example, use <nav> for navigation links, <header>, <main>, and <footer> to define page sections, and <article> or <section> for individual news items.

Implement Accessibility Features: Add aria-labels to interactive elements, especially for icon buttons like the menu opener and closer, to improve accessibility for screen reader users.

In summary, your implementation is on the right track, and with these enhancements, it can be improved for better performance, maintainability, and user experience. Keep up the great work, and continue to explore new ways to refine your web development skills!

Marked as helpful

1

Amir H K 150

@AmirHKarimi888

Posted

Many thanks for giving your attention to my project and all your helpful suggestions🙏🙏@tatasadi

0
P

@tatasadi

Posted

@AmirHKarimi888 I'm glad you found the review helpful! If you feel the suggestions contributed positively to your project, marking the review as helpful would be greatly appreciated. This not only acknowledges the effort put into the review but also assists others in identifying valuable feedback. Thanks again for your engagement, and best of luck with your project improvements!

1

Please log in to post a comment

Log in with GitHub
Discord logo

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