
Product preview card component with Flexbox and Grid
Design comparison
Community feedback
- @VCaramesPosted over 2 years ago
Hey there! 👋 Here are some suggestions to help improve your code:
- Since the images in this component add value and serve a purpose (displaying the product), it is best to use the
Picture
element and not thebackground-image
property, as it will to use different images during different breakpoints.
Here is an example of how it works: EXAMPLE
Syntax:
<picture> <source media="(min-width: )" srcset=""> <img src="" alt=""> </picture>
More Info:📚
https://www.w3schools.com/html/html_images_picture.asp
https://web.dev/learn/design/picture-element/
- The only heading in this component, is the name of the perfume; “Gabrielle Essence Eau De Parfum” . The rest of the text should be wrapped in a
Paragraph
element.
- Currently, the old price (169.99) 🏷 is not being properly announced to screen readers. To fix this, you are going to wrap the the price in a
Del
element and inside it you will add aSpan
element with an sr-only class that will state something like “The previous price was…” and use CSS to make it only visible to screen readers.
If you have any questions or need further clarification, feel free to reach out to me.
Happy Coding! 🍂🦃
Marked as helpful1@CimlahPosted over 2 years agoHello @vcarames, Thank you for your feedback. I would like to try using the
<picture>
elements, you suggested. But I want source of the picture to change based on orientation of device display. Is it as easy, as writing something like:<picture> <source media="(orientation: portrait)", srcset="image-portrait.png"> <source media="(orientation: landscape)", srcset="image-landscape.png">
?
0@VCaramesPosted over 2 years ago@Cimlah
The
picture
element only usesmin-width
andmax-width
. Why would you want to lock your design to screen orientation, makes no sense for this or any challenge in this site. Would make more sense for a video game, where having the device in landscape mode is crucial.0 - Since the images in this component add value and serve a purpose (displaying the product), it is best to use the
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