Design comparison
Solution retrospective
This is the third Frontend Mentor challenge that I completed. The most difficult part for me is to center the div that contains social media icons, and I wasn't sure if I used the right code for it. I would be very grateful to receive feedbacks not only about centering the icons but also about anything. Thank you very much :))
Community feedback
- @0xabdulkhaliqPosted over 1 year ago
Hello there 👋. Congratulations on successfully completing the challenge! 🎉
- I have other recommendations regarding your code that I believe will be of great interest to you.
HTML 🏷️:
- This solution may cause accessibility errors due to lack of semantic markup, which causes lacking of landmark for a webpage and allows accessibility issues to screen readers, due to accessibility errors our website may not reach its intended audience, face legal consequences, and have poor search engine rankings, highlighting the importance of ensuring accessibility and avoiding errors.
- What is meant by landmark ?, They used to define major sections of your page instead of relying on generic elements like
<div>
or<span>
. They are use to provide a more precise detail of the structure of our webpage to the browser or screen readers
- For example:
- The
<main>
element should include all content directly related to the page's main idea, so there should only be one per page - The
<footer>
typically contains information about the author of the section, copyright data or links to related documents.
- So resolve the issue by replacing the
<div class="container">
element with the proper semantic element<main>
in yourindex.html
file to improve accessibility and organization of your page
.
I hope you find this helpful 😄 Above all, the solution you submitted is great !
Happy coding!
Marked as helpful1@aghniputraPosted over 1 year ago@0xAbdulKhalid Thank you so much for your feedback. I become more aware of accessibility issues and how important it actually is thanks to your feedback :)
0 - @radektomasekPosted over 1 year ago
Hello Aghnia 👋,
well done with the solution. I had a chance to have a look into that in the morning and here are my thoughts:
1: Great thoughts by using CSS Grid for this solution. It helps you to resolve some challenges you would face otherwise.
However, I have some suggestions re: grid structure (this would also solve your responsibility issues on the small displays).
-
on a small display (mobile layout) I would go for the following structure: 1 column / 3 rows. In each row the logo, illustration image and the block with the main copy are placed.
-
on a bigger displays (tablets and above) I would recommend to use the following structure: 2 columns / 2 rows.
The key point here is to put the logo in a separate grid elements (on a small display, it will be 1 column/1 row, large one it might be spread in two columns/1 row).
It will help you to reduce the space between the logo/illustration image and have more flexibility in styling.
I had personally chosen slightly larger grid than I recommend you here, which gave me even more flexibility (I spread the illustration image in two cells), but even you implement a small change I recommend, you will definitely get some extra flexibility.
2: It's nice to see you are using relative unit for the font sizes. You can also consider using CSS variables to reduce the duplicates. There is also some commented code inside of your CSS. I recommend to remove it to make things cleaner. You can always check things back, especially as you have things versioned by GIT.
3: You layout is slightly broken on small displays. Either consider the solution with the update of the Grid structure (the first point) or apply a
min-width
which help you persist some consistency. It's good idea to implement that anyway in cases the resolution is smaller than the 375px.But other than that, well done 👍
Marked as helpful1@aghniputraPosted over 1 year ago@radektomasek Thank you so much for your feedback. I tried applying your suggestions and I think the result looks much better now :)
0@radektomasekPosted over 1 year ago@aghniputra I am glad it helped :-) I think CSS Grid, in general, helps to simplify things a lot.
1 -
Please log in to post a comment
Log in with GitHubJoin 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