HTML Academy
Paper buttons, step 1
Smooth transitions10/29
Back to the list of tasks
  • 1. The transition-duration property
  • 2. Transition duration, step 2
  • 3. The transition-property: which properties can be changed smoothly?
  • 4. The transition-delay property
  • 5. The “form” of the transition, transition-timing-function
  • 6. transition-timing-function, step 2
  • 7. transition-timing-function, step 3
  • 8. transition-timing-function, step 4
  • 9. Paper buttons, step 1
  • 10. Paper buttons, step 2
  • 11. Paper buttons, step 3
  • 12. Checkboxes, step 1
  • 13. Checkboxes, step 2
  • 14. Checkboxes, step 3
  • 15. Radio buttons, step 1
  • 16. Radio buttons, step 2
  • 17. Radio buttons, step 3
  • 18. Toggle switches, step 1
  • 19. Toggle switches, step 2
  • 20. Toggle switches, step 3
  • 21. Toggle switches, step 4
  • 22. The transformer icon, step 1
  • 23. The transformer icon, step 2
  • 24. The transformer icon, step 3
  • 25. The transformer icon, step 4
  • 26. Text input field, step 1
  • 27. Text input field, step 2
  • 28. Text input field, step 3
  • 29. Text input field, step 4
Paper buttons, step 3
  • Sign up
  • Log in

Loading…
Everything will be ready in few seconds

  • Theory
  • Theory
  • Comments

Paper buttons, step 2

So, we have finished creating the skeleton code for our buttons. Let’s now bring them to life.

We can toggle the buttons using a technique involving the ~ and :checked selectors

First, assign a background color for the active state of the buttons. The “True” button changes the color to green, and the “False” button changes it to red. To do this, we will need to use the following selectors:

.paper-btn-true input:checked ~ label { ... } // True
.paper-btn-false input:checked ~ label { ... }  // False

Comments

  • index.html
  • style.css
HTML
<!DOCTYPE html> <html lang="en"> <head> <title>Paper buttons, step 2</title> <meta charset="utf-8"> <link rel="stylesheet" href="material.css"> <link rel="stylesheet" href="style.css"> </head> <body class="blue-theme"> <section class="card"> <h1 class="question"><span>Does HTML stand for “How To Meet Ladies”?</span></h1> <form class="answers" action="https://echo.htmlacademy.ru/courses" method="post"> <button class="fab" type="submit">&#58882;</button> <div class="yes-no-selector"> <div class="paper-btn paper-btn-true"> <input type="radio" name="answer" id="yes-answer"> <label for="yes-answer">True</label> </div> <div class="paper-btn paper-btn-false"> <input type="radio" name="answer" id="no-answer"> <label for="no-answer">False</label> </div> </div> </form> </section> </body> </html>
CSS
.paper-btn { display: inline-block; margin: 58px 12px; } .paper-btn label { display: inline-block; width: 80px; border-radius: 3px; background-color: #f5f5f5; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3); color: #616161; text-transform: uppercase; font-size: 14px; line-height: 40px; cursor: pointer; } .paper-btn input { display: none; } .paper-btn-true input:checked ~ label { } .paper-btn-false input:checked ~ label { }

What didn’t you like in this task?

Thanks! We’ll fix everything at once!

The code has changed, click “Refresh” or turn autorun on.

You’ve gone to a different page

Click inside the mini-browser to shift the focus onto this window.

100%
Goalscompleted
0
    1. Set the background color to #00e676 for the active state of the “True” button,
    2. and set the background color to #ff5252 for the active state of the “False” button.

    Toggle the “True” or “False” buttons to test the result.

    Cookies ∙ Privacy ∙ License Agreement ∙ About ∙ Contacts ∙ © HTML Academy OÜ, 2019−2025

    VISAMastercard

    Log in

    or

    Forgot your password?

    Sign up

    Sign up

    or
    Log in

    Restore access

    Have you forgotten your password or lost access to your profile? Enter your email connected to your profile and we will send you a link to restore access.

    Forgot to connect your email to the profile? Email us and we’ll help.