Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found
Not Found

Submitted

Frontend Mentor | Interactive rating component

@Alexey-Cuevas

Desktop design screenshot for the Interactive rating component coding challenge

This is a solution for...

  • HTML
  • CSS
  • JS
1newbie
View challenge

Design comparison


SolutionDesign

Community feedback

@VCarames

Posted

Hey there! 👋 Here are some suggestions to help improve your code:

  • 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:📚

MDN Main Element

  • Along with the blank alt tag, you also want to include the aria-hidden=“true” to your “ images/illustrations” to fully remove them from assistive technology.

More Info:📚

https://www.w3.org/WAI/tutorials/images/

  • 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 each input should have a label attached to it to make the buttons accessible. Finally wrap all the inputs and labels inside a fieldset to prevent users from making more than one selection.

More Info:📚

MDN <input type="radio">

MDN <fieldset>: The Field Set element

  • The attribution should be wrapped inside a footer element.

If you have any questions or need further clarification, feel free to reach out to me.

Happy Coding!🎄🎁

Marked as helpful

0
Adriano 34,090

@AdrianoEscarabote

Posted

Hi Alexey (Rewet), how are you? I really liked the result of your project, but I have some tips that I think you will enjoy:

To fix the functionality of the buttons, we can do this:

ratings.forEach((rating) => {
  rating.addEventListener("click", () => {
    actualRating.innerHTML = rating.innerHTML
    submitButton.addEventListener("click", () => {
       mainContainer.style.display = "none"
       thanksContainer.classList.remove("hidden")  
    })
  })
})


rateAgain.addEventListener("click", () => {
  mainContainer.style.display = "block"
  thanksContainer.classList.add("hidden")
})

The rest is great!

I hope it helps... 👍

0

Please log in to post a comment

Log in with GitHub
Discord logo

Join 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