Design comparison
Solution retrospective
A project using html and CSS with flexbox any feedback is welcome, thanks :)
Community feedback
- @PhoenixDev22Posted over 2 years ago
Hello Alejandro,
Congratulation on completing this challenge.
Excellent work! I have few suggestions regarding your solution, if you don't mind:
HTML
You can use
<main>
landmark to wrap the NFT card.HTML5 landmark elements are used to improve navigation.-
Since there's a :hover state on the image and means it's interactive, So there should be an interactive element around it. When you create a component that could be interacted with a user , always remember to include interactive elements like(button, textarea,input, ..) for this imagine what would happen when you click on the image, there are two possible ways:
1: If clicking the image would show a popup where the user can see the full NFT, here you use<button>
. 2:If clicking the image would navigate the user to another page to see the NFT, here you can use<a>
. -
The link wrapping the equilibrium image should either have
Sr-only
text, anaria-label
oralt
text that says where that link takes you. -
- For any decorative images, each img tag should have empty
alt=""
as you did and addaria-hidden="true"
attributes to make all web assistive technologies such as screen reader ignore those images in(icon-view, icon-ethereum, icon-clock
).
- For any decorative images, each img tag should have empty
-
If you wish to draw a horizontal line, you should do so using appropriate CSS. You may remove the
<hr>
, you can useborder-top:
to the avatar's part. -
To use more semantic tags , you may use
<figure>
and<figcaption>
for the avatar's part. -
The avatar's alt should not be avatar, it’s meaningless. You can use the creator's name
Jules Wyvern
. Read more how to write an alt text -
For middle part of the card
class="PriceTime-flex"
, you can use an unordered list<ul>
, in each<li>
there should be<img>
and<p>
that way you can align them centrally.
There are so many ways to do the hover effect on the image, The one I would use is pseudo elements
::before, ::after
. You can use pseudo-elements to change the teal background color to hsla. Then the opacity can be changed from 0 to 1 on the pseudo element on the hover. Also using pseudo elements makes your HTML more cleaner as there's need for extra clutter in the HTML . The icon-view doesn’t really need to be in the HTML. You can use CSS for it.- Adding
rel="noopener"
orrel="noreferrer"
totarget="_blank"
links. When you link to a page on another site using target=”_blank” attribute , you can expose your site to performance and security issues.
- There are so many arguments against setting the root
font-size: 62%
it state that you should never change the root font size because it harms accessibility.
Overall, Your solution is good. Hopefully this feedback helps.
Marked as helpful1@AlexKR7Posted over 2 years ago@PhoenixDev22 Thank you very much, I will try to apply these good practices in future projects
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