Design comparison
Solution retrospective
Any tweaks much appreciated!
For some reason the preview comes up with a stretched profile image, but this isn't replicated at any page width as far as I can see 🤷♂️
Community feedback
- @KristaCallejaPosted about 3 years ago
Hi @fraserwat, I have been going through your projects and I love your work. I'm taking note of your approaches to learn more. I am very newbie in comparison to you and of course, I feel very "little" to advise you, however the profile-card img is also showing stretched on my Firefox browser. I tried adding height: auto to it and it seemed to address it (though it affects the other cards too). Looking forward to seeing more of your work.
Marked as helpful1@fraserwatPosted about 3 years ago@KristaCalleja thanks Krista!! That's really nice to hear! I'm sure you'll get there - it's been slow and steady progress on my part!
That's a good spot, I should really test out projects on multiple browsers to check for these kind of errors - thanks!
0 - @pikapikamartPosted about 3 years ago
Hey, great work on this one. Layout in desktop looks really great, it is responsive and the mobile state looks great as well.
Yeah, I tried to zoom out as well and can't reproduce on the screenshot, does taking another screenshot cannot take the bug away?
Some suggestions would be:
- Person's
img
should be using the person's name as thealt
likealt="Jeremy Robson"
. The person's image is meaningful since the component is highlighting the person's profile. - You don't really need to use
nav
in here since there are no navigational links that are currently present. Instead, since you are using a set of radio buttons, usefieldset
instead ofnav
, add as well a screen-reader onlylegend
element, thislegend
's text-content will describe what is the set of radio buttons are for. - Your set of radio buttons have no visual indicator right now, so tabbing on it doesn't show where the users is currently at. On this, personally I would use a
fieldset:focus-within
and add anoutline
to thefieldset
but I might trim down thefieldset
's width so that it won't be large, I might first wrapped thefieldset
in adiv
so that I could control its size properly. - Each
input
should have the same size as theirlabel
and they should placed right underneath thelabel
, just make sure thelabel
is above eachinput
. Because by usingwidth: 1px
this makes theinput
have like no appearance when using screen-reader. Typically when using screen-reader there is another outline that covers a control element, this is an indicator for other users as well since not only not-sighted users uses screen-readers and providing indicator is always necessary. So eachinput
is placed where theirlabel
is placed.
Aside from those, site looks great and awesome again on this one.
1@fraserwatPosted about 3 years agothanks @pikamart - really really helpful stuff!
Have set up input elements directly below labels, but with zero opacity - am I right in thinking you're saying this is alright as it would still be picked up by the screen reader?
0@pikapikamartPosted about 3 years ago@fraserwat Yep, right now they are being seen in the screen-reader visually as well. Though I would recommend like what I said for the
input
to be place, oh okay hahaha my wording is wrong, it should be "behind" not "underneath" theinput
should be behind thelabel
it self with a same size as thelabel
. This way when in screen-reader, it's outline shape matches thelabel
and it is place behind it, making like thelabel
has the full outline.0 - Person's
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