Design comparison
Community feedback
- @VCaramesPosted almost 2 years ago
Hey there! 👋 Here are some suggestions to help improve your code:
- There is no need for a
header
element for this challenge.
- To not only improve your HTML code but to identify the main content of you page, you will want to wrap your entire component inside the
main
element.
More Info:📚
- The proper way to build the "rating buttons" in this challenge is to create a
form
and inside of it, there should be fiveinput radios
and eachinput
should have alabel
attached to it to make the buttons accessible. Finally wrap all theinputs
andlabels
inside afieldset
to prevent users from making more than one selection.
More Info:📚
MDN <fieldset>: The Field Set element
If you have any questions or need further clarification, feel free to reach out to me.
Happy Coding!🎄🎁
Marked as helpful0@RSmith484Posted almost 2 years ago@vcarames thank so much for the feedback. I understand your comments re header and main tags and have corrected this in my code.
In relation to the ratings buttons, I have updated the code to use radio buttons now as per your suggestion. This actually made the JavaScript code a lot simpler. I will remember to use radio buttons in the future for any similar projects.
Appreciate the assistance.
0 - There is no need for a
- @AdrianoEscarabotePosted almost 2 years ago
Hello Renee Smith, how are you? Welcome to the community of front-end mentors! I truly loved your project's outcome, however I have some advice that I hope you'll find useful:
To make the submit button work only when the user selects a number, we can do this:
ratingsContainer.addEventListener('click', (e) => { if(e.target.parentNode.classList.contains('rating') && e.target.nextElementSibling) { removeActive() e.target.parentNode.classList.add('active') selectedRating = e.target.nextElementSibling.innerHTML } else if( e.target.parentNode.classList.contains('rating') ) { removeActive() e.target.parentNode.classList.add('active') selectedRating = e.target.innerHTML } submitBtn.addEventListener('click', (e) => { panel.innerHTML = ` <img src="./images/illustration-thank-you.svg"> <p id="thank-you">You selected ${selectedRating} out of 5</p> <h1>Thank You!</h1> <br> <p>We appreciate you taking the time to give a rating. If you ever need more support, don’t hesitate to get in touch!</p> ` }) })
The remainder is excellent.
I hope it's useful. 👍
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