Skip to content
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted 20 days ago

Responsive Bento Grid CSS Layout + Flexbox

pure-css
Patience A. Ojerinde•30
@Patience-1
A solution to the Bento grid 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?

What I'm Most Proud Of: I’m honestly really proud of how I was able to create a fully responsive grid layout using just HTML and CSS. The fact that I made it work seamlessly across both desktop and mobile was a big win for me. I also feel proud of how much I’ve grown in my understanding of CSS Grid and media queries. It’s amazing how just a few lines of code can make such a big difference.

Another thing I’m proud of is taking the project all the way from concept to deployment on GitHub Pages. That was a big step because I had to learn how to manage my code in a public repository, and it was really satisfying seeing the project live.

Finally, I’m proud of the way I kept pushing through the challenges. When things didn’t work at first, I didn’t just give up. I kept experimenting and debugging, asking questions when I needed help, and solving problems along the way.

What I’d Do Differently Next Time: Looking back, I think one thing I’d do differently is organizing my code a bit more. Instead of having everything in one big style-sheet, I’d probably break it into smaller files to make it easier to maintain.

I also realize now that JavaScript would have added a whole new layer of interactivity to the page. Maybe something simple like a button that triggers an interactive element would have made it even more engaging. That’s something I definitely want to explore next time.

Another thing I’d focus on is testing across more devices and browsers. I made sure it looked good on mobile and desktop, but next time, I’d want to test it on things like tablets or different browsers to make sure the experience is consistent everywhere.

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

The Challenges I Encountered: One of the biggest challenges I faced was making the design responsive. When I started working on the layout, I initially focused mostly on the desktop view. But when I switched to my phone to test it, the design completely broke. It wasn’t looking great at all on smaller screens! It was frustrating at first, especially because I thought I had everything set up properly.

Then, I also realized I had to be more intentional with my media queries. I wasn’t targeting all the screen sizes that I needed, and the content wasn’t adjusting as smoothly as I’d hoped. This led to some frustration in the layout, especially with how the grid items would stack or not adjust properly on mobile.

Another challenge was understanding and using GitHub Pages for hosting. I wasn’t sure how to link my local files to GitHub Pages and make sure the website was live. I had to research and follow a few tutorials to get the project hosted correctly, and there was a bit of back-and-forth with troubleshooting before it worked smoothly.

How I Overcame These Challenges: For the responsiveness issue, I took a step back and revisited my CSS media queries. I started testing on different devices and screen sizes. Once I figured out the correct breakpoints for tablets, phones, and desktops, I was able to adjust the layout accordingly. This took some trial and error, but in the end, I was able to ensure the design was fluid across devices. I also used flexbox and CSS Grid more effectively, which helped make the layout more flexible.

For GitHub Pages, once I figured out the basic workflow of pushing my code to the repository and linking it to GitHub Pages, it became much easier. I followed the documentation carefully, and when things didn’t work at first, I sought help from online resources(W3 Schools). It felt great when I finally saw the website live, and I knew I’d learned a valuable skill.

It was also a huge help to ask for advice from my TechCrush community. Whether it was debugging a small issue or asking for a second opinion, the support really made a difference. Having that community of like-minded learners pushed me to stay focused and motivated.

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

I’ve made the layout responsive, but I’m worried that it might not look the same across all browsers. For example, it works well in firefox, but I’m not sure how it works in Chrome. I’m using CSS Grid and Flexbox, so I’d love some tips on making sure the design works consistently across all major browsers. While I’ve focused on making the design mobile-friendly and visually appealing, I’m not fully confident in its accessibility. I’d like to add more interactivity, but I’m still learning JavaScript. Right now, I’m not sure where to start when it comes to adding these interactive elements.

I’m comfortable with the basics of Git, but as i want to work on bigger projects in the future, I’d like to get better at managing my code, especially when it comes to version control, branching, and collaboration.

I'd love to learn more

Code
Select a file

Please log in to post a comment

Log in with GitHub

Community feedback

  • Marzia Jalili•7,010
    @MarziaJalili
    Posted 20 days ago

    Congratulations on emarking on this amazing journey here! 🎉

    Some tiny tweaks?

    ✅ It's best practice to have one main element for each web page, so consider wrapping all the elements within the main element .

    ✅ Then, as the body element will only have one element you can center the content effortlessly. Just set the code body selector:

    display: grid;
    place-items: center;
    min-height: 100vh; 
    

    🌟 Other than that, the web is lit, keep it up!

    😎😎😎

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
Frontend Mentor logo

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 1st-party linked stylesheets, and styles within <style> tags.

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.

Oops! 😬

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

Log in with GitHub