Design comparison
Solution retrospective
I tried to make the card using flexbox initially, couldn't do it because the image-container didn't take the 50% width, it just kept showing there was available space without actually using the space.
How should I fix this issue?
Community feedback
- @correlucasPosted about 2 years ago
👾Hello @z0dded, Congratulations on completing this challenge!
Your solution its almost done and I’ve some tips to help you to improve it:
1.Prefer
CLASS
instead ofID
to give style to your elements, choosingid
is not a good idea because it’s a too specific selector and it's better to use it forforms
or Javascript code. It is not advisable to use IDs as CSS selectors because if another element in the page uses the same/similar style, you would have to write the same CSS again.2.Use the THE PICTURE TAG that is a shortcut to deal with the multiple images in this challenge. So you can use the
<picture>
tag instead of importing this as an<img>
or using a div withbackground-image
. Use it to place the images and make the change between mobile and desktop, instead of using adiv
orimg
and set the change in the css withdisplay: none
with the tag picture is more practical and easy. Note that for SEO / search engine reasons isn’t a better practice import this product image with CSS since this will make it harder to the image. Manage both images inside the<picture>
tag and use the html to code to set when the images should change setting the devicemax-width
depending of the device desktop + mobile.Check the link for the official documentation for
<picture>
in W3 SCHOOLS:https://www.w3schools.com/tags/tag_picture.asp
See the example below:
<picture> <source media="(max-width:650px)" srcset="./images/image-product-mobile.jpg"> <img src="./images/image-product-desktop.jpg" alt="Gabrielle Parfum" style="width:auto;"> </picture>
👨💻Here's my solution for this challenge if you wants to see how I build it: https://www.frontendmentor.io/solutions/product-preview-card-vanilla-css-and-custom-hover-state-on-hero-85A1JsueD1
✌️ I hope this helps you and happy coding!
Marked as helpful0@z0ddedPosted about 2 years ago@correlucas Thank you very much for the tips you gave me, it is very helpful.
I'm gonna try to code a bit later.
0 - @rameshkmunjalPosted about 2 years ago
Hey @z0dded Congratulations on completing the challenge. You have done a good job. Regarding the problem you discussed , I would like to say - when I make changes in your css and use display:flex, found no problem. I suggest you to try once again . I made following changes and the page is ok after making these changes. #card{ display:flex; border-radius: 0.5rem; background-color: var(--white); width:40rem; height:30rem; } #image-container{ width:50%; border-top-left-radius:0.5rem; border-bottom-left-radius:0.5rem; height:100%; background-image:url(./images/image-product-desktop.jpg); background-size:cover; } #content{ height:100%; width:50%; padding:2rem; font-family:”Monserrat”, sans-serif; } Please revert if you still face this problem. Thanks for reading.
0
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